Excellent! Thanks,
ben On Wed, Dec 28, 2011 at 2:37 PM, Duncan Murdoch <[email protected]>wrote: > On 11-12-28 4:30 PM, Ben quant wrote: > >> Hello, (sorry re-posting due to typo) >> >> I'm attempting to get the folders of a path in a robust way (platform >> independent, format independent). It has to run on Windows and Linux and >> tolerate different formats. >> >> For these: (The paths don't actually exist in Linux but you get the idea.) >> >> Windows: >> file_full_path = "C://Program Files//R//R-2.13.1//NEWS.pdf" >> file_full_path = "C:\Program Files\R\R-2.13.1\NEWS.pdf" >> Linux: >> file_full_path = "~/Program FilesR/R-2.13.1/NEWS.pdf" >> file_full_path = "/home/username/Program FilesR/R-2.13.1/NEWS.pdf" >> >> I would get for Windows: "C", "Program Files", "R", "R-2.13.1","NEWS.pdf" >> I would get for Linux: "home","username", "Program Files", "R", >> "R-2.13.1","NEWS.pdf" >> (The drive and/or home/username aren't necessary, but would be nice to >> have. Also, that file name isn't necessary, but would be nice.) >> >> Thank you for your help, >> >> > If you use the normalizePath() function with winslash="/", then all > current platforms will return a path using "/" as the separator, so you > could do something like > > strsplit(normalizePath(**filename, winslash="/"), "/")[[1]] > > You need to be careful with normalizePath: at least on Windows, it will > not necessarily do what you wanted if the filename doesn't exist. > > Duncan Murdoch > [[alternative HTML version deleted]] ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.

