我正在使用XmlTextWriter,并在从rest服务加载URL时出错。错误是“路径中的非法字符”。我尝试过使用@“https://www.foo.com/foobar/rest-1/Data/Test?sel=GeneratedFrom&find=TS-01108&findin=Parent.Number”
当我单步调试时,我看到该值有引号,但我怀疑它可能是“?”,“=”,“&”要么 ”。”也许
string URL = "https://www.foo.com/foobar/rest-1/Data/Test?sel=GeneratedFrom&find=TS-01108&findin=Parent.Number";
string XML_FILENAME = URL + ".xml";
WebResponse response = utils.GetRestResponse(URL);
if (response != null)
{
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(XmlReader.Create(response.GetResponseStream()));
// Illegal characters in path happens here
XmlTextWriter writer = new XmlTextWriter(XML_FILENAME, null);
答案 0 :(得分:2)
我认为您误解了第一个XmlTextWriter初始化程序参数的用途。如果在那里传递一个字符串参数,那应该是一个文件名而不是一个web资源。
答案 1 :(得分:0)
https://www.foo.com/foobar/rest-1/Data/Test?sel=GeneratedFrom&find=TS-01108&findin=Parent.Number
不是合法的文件名,请将其更改为其他名称。当xml文件写入磁盘时,它需要合法的名称,您的名称包含非法字符。尝试创建一个具有该名称的文本文件,Windows会抱怨。