我遇到了将文件路径正确写入文本文件的问题。我收到一个错误“路径中的非法字符”。 我从函数传入的文件路径是
imagePath =“ c:\ temp \ temp \ file_name.jpg”。(来自函数)
每当我使用以下
imagePath = Path.GetFullPath(imagePath);
我收到错误“路径中的非法字符”。 这里的问题是“ \ t”虽然是路径的一部分,但仍被视为非法字符。那么如何将其写入文本文件?我无法控制名称中的此类字符。
如何编写完整路径?
这里我要添加有关该功能的更多详细信息。
ServerResponse jsonResult = new ServerResponse();
try
{
jsonResult = JsonConvert.DeserializeObject<ServerResponse>(strResponse);
string imagePath = jsonResult.image;
// string imagePath = "\"M\"\\a/ry/ h**ad:>> a\\/:*?\"| li*tt|le|| la\"mb.?";
// string invalid = new string(Path.GetInvalidFileNameChars()) + new string(Path.GetInvalidPathChars());
imagePath = Path.GetFullPath(imagePath);
File.AppendAllText(PredictFileName, (string)imagePath);
txtJSONresult.AppendText((String)imagePath.ToString());
txtJSONresult.AppendText(Environment.NewLine);
}
catch (Exception ex)
{
txtJSONresult.AppendText(strResponse);
txtJSONresult.AppendText(Environment.NewLine);
txtJSONresult.AppendText(ex.Message);
txtJSONresult.AppendText(Environment.NewLine);
}
服务器将图像路径发送为“ c:\ temp \ temp \ file_name.jpg”,我想将该路径保存为本地PC中的txt文件。不管我做什么,我总是拥有“ \ t”或其他可能被视为非法的特殊字符。 字符串imagePath = jsonResult.image
那么不管此文件具有什么功能,将其写入文本文件的正确方法是什么?
这是我从服务器获取的JSON字符串:
{"image":"c:\testimage\test.jpg","predictions":[[1.03891e-05, 0.0128408, 0.914102, 9.68333e-05, 0.0729495]]}
答案 0 :(得分:-1)
从服务器端修复
确保发送正确的字符串格式:
"C:\\doubleSlash\\paths"
@"C:\singleWith\atSymbol"
从客户端修复,没有服务器控制
通过将无效字符替换为正确的对应字符来处理数据,否则,请与服务提供商联系以获取服务器端解决方案;]