从文件读取字符串路径时出错(逃避故障)

时间:2016-03-18 15:07:42

标签: c# file-io escaping

我有一个json配置文件,我试图获取文件的路径。它看起来像这样(在json键入口中):

“”path“”:“”\ myfstore \ xdrive \ test \ files \“”

我将json数据读入属性和 当我尝试像这样使用它时,

File.WriteAllBytes(myObj.Path + myObj.FileName, aBuffer);

我收到错误:“”找不到路径'c:\ myfstore \ xdrive \ test \ files \ MyFile.txt'的一部分。“

为什么要把c:我放在那里?顺便说一句,myfstore是一个网络共享。

如果我使用这样的变量,它就有效:

string path = @"\\myfstore\xdrive\test\files\" + myObj.FileName;
File.WriteAllBytes(path, aBuffer);

但我需要将这些路径存储在json文件中。

我已尝试在json文件中以不同方式转义它,但我得到“非法字符”错误或上述错误 - “找不到路径的一部分”。

我做错了什么?

2 个答案:

答案 0 :(得分:0)

对我来说这似乎很明显。在您的第一个示例中,您有这个字符串:

\myfstore\xdrive\test\files\

在你的第二个例子中你有这个字符串

\\myfstore\xdrive\test\files\

一个是网络路径,另一个是不是。

你的json在开头应该有两个反斜杠。不是一个。

答案 1 :(得分:0)

是的,在这里输入问题后再看一遍就显而易见了。我不得不将json值更改为:

“path”:“\\ myfstore \ xdrive \ test \ files \”