code_junkie

Building a directory string from component parts in C#

Nov 11th, 2011
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 0 0
  1. string CombinePaths(params string[] parts) {
  2. string result = String.Empty;
  3. foreach (string s in parts) {
  4. result = Path.Combine(result, s);
  5. }
  6. return result;
  7. }
  8.  
  9. string CombinePaths(params string[] parts) {
  10. string result = String.Empty;
  11. foreach (string s in parts) {
  12. result = Path.Combine(result, s);
  13. }
  14. return result;
  15. }
  16.  
  17. string CombinePaths(params string[] parts) {
  18. string result = String.Empty;
  19. foreach (string s in parts) {
  20. result = Path.Combine(result, s);
  21. }
  22. return result;
  23. }
  24.  
  25. string[] ary = new string[] { "c:\", "Windows", "System" };
  26. string path = ary.Aggregate((aggregation, val) => Path.Combine(aggregation, val));
  27. Console.WriteLine(path); //outputs c:WindowsSystem
  28.  
  29. public static DirectoryInfo Subdirectory(this DirectoryInfo self, params string[] subdirectoryName)
  30. {
  31. Array.ForEach(
  32. subdirectoryName,
  33. sn => self = new DirectoryInfo(Path.Combine(self.FullName, sn))
  34. );
  35. return self;
  36. }
  37.  
  38. DirectoryInfo di = new DirectoryInfo("C:\")
  39. .Subdirectory("Windows")
  40. .Subdirectory("System32");
  41.  
  42. DirectoryInfo di2 = new DirectoryInfo("C:\")
  43. .Subdirectory("Windows", "System32");
  44.  
  45. public static string CreateDirectoryName(string fileName, params string[] folders)
  46. {
  47. if(folders == null || folders.Length <= 0)
  48. {
  49. return fileName;
  50. }
  51.  
  52. string directory = string.Empty;
  53. foreach(string folder in folders)
  54. {
  55. directory = System.IO.Path.Combine(directory, folder);
  56. }
  57. directory = System.IO.Path.Combine(directory, fileName);
  58.  
  59. return directory;
  60. }
Add Comment
Please, Sign In to add comment