2013-11-03 47 views
1
public void LoadRegionMaps() 
    { 
     for (int x = 9; x < 10; x++) 
     { 
      for (int y = 9; y < 10; y++) 
      { 
       string path = RegionData[x, y, 1]; 
       System.Console.Write("Opening File..."); 

       if(path != "0") 
       { 
        System.Console.Write(path); 
        string[] fileText = File.ReadAllLines(path); 

在.txt文件看起来像这样的路径:C# - “路径中具有非法字符” File.ReadAllLines

"..\\Bin\\Assets\\WorldMap\\Regions\\Forest.txt" 

我试图改变它

@"..\\Bin\\Assets\\WorldMap\\Regions\\Forest.txt" 

无论是工作。

这两个都会导致标题中出现错误,在我显示的最后一行代码中。

path = "..\\Bin\\Assets\\WorldMap\\Regions\\Forest.txt" 

工程。

RegionData是一个字符串数组,持有上述文件路径。

回答

1

删除文件中的双重\\"\\是一个转义序列,转换为C#上的\,但不适用于从文件读取的数据,除非您为此编写代码。

..\Bin\Assets\WorldMap\Regions\Forest.txt 
+0

谢谢,它的工作原理。 – user2948630

+0

哦光荣的光荣的C#:)我能摆脱整个路径,并简单地使用1变量的名称(前“森林”),摆脱“.. \路径\路径\路径\ Forest.txt”和“ .. \路径\ Forest.png”。我讨厌C++字符串哈哈:P这太棒了! path =(“.. \\ Bin \\ Assets \\ WorldMap \\ Regions \\”+ path +“.txt”); – user2948630