2013-04-11 112 views
0

初学者在这里。在C中更改目录路径#

我有一个目录结构,在路径中有一个随机数的文件夹。

c:\folderA\subfolder\dump1\history\varc:\folderA\subfolder\dump22\history\var

我希望程序动态地读取每个目录路径。所以我将路径分为“部分路径”+“修复路径”。看代码。

这样做是因为\ dump *是未知数,我不想对其进行硬编码。

下面的代码片段的工作和成功,但我想操纵结果中的字符串的一部分。

还有我的问题,我不知道如何将分区字符串c:\更改为其他内容。也许一个新的分区d:\或UNC路径\\someserver\fileshare

如果全成,它应该是这样的:

D:\folderA\subfolder\dump22\history\var 

或者

\\someserver\fileshare\folderA\subfolder\dump22\history\var 

这样做是为了让我可以写额外的代码来移动内容从\ var到另一个目录等。

{ 
    static void Main() 
    { 

     // Grab directory root 

     string[] array1 = Directory.GetDirectories(@"c:\folderA\subfolder\"); 


     // Display all directory paths 
     Console.WriteLine("--- Paths---"); 
     foreach (string name in array1) 
     { 
      // Add Partial Path + Fix Path 

      String CombinePath = (name + "\\history\\var"); 
      Console.WriteLine(CombinePath); 

      //Results 
    //c:\folderA\subfolder\dump1\history\var 
      //c:\folderA\subfolder\dump22\history\var 

      { 

       //pause 
       Console.ReadLine(); 
      } 
     } 
    } 
    } 
} 
+0

也许像[“Directory.SetCurrentDirectory()”](http://msdn.microsoft.com/en-us/库/ system.io.directory.setcurrentdirectory.aspx)? – paulsm4 2013-04-11 21:50:54

回答

2
CombinePath.Replace(@"C:\", @"D:\"); 
+0

谢谢大家!好的解决方案 。替换可能是关键。我会试试看。 – user2272050 2013-04-12 13:23:13

0

您可以定义字典数据结构来保存字符串。如果你不想定义你自己的字符串路径生成,你可以看看QueryString