是否有办法从XDocument对象本身检索XDocument保存的路径(文件名)?
我的意思是在我已经保存了XDocument对象之后获取保存的路径。像这样:
XDocument xDoc = new XDocument();
xDoc.Save(@"C:TempMyXmlDoc.xml");
string str = xDoc.SavedPath() // <== something like this
如果从文件加载XDocument
,则BaseUri
属性将包含文件名。如MSDN所述:
有时XmlReader具有基URI,有时它不会。为例如,从文件加载时,XmlReader知道基URI,但是当从XmlReader读取时被创建是因为调用解析方法,没有可能XmlReader报告一个基本URI;
但是,在保存文档时不会设置,只有在加载操作时才会设置。因此,如果您需要知道保存路径,则需要在保存时独立于XDocument
实例进行存储。
不,XDocument不记得它保存到哪里了。
你必须自己记住路径,例如
XDocument xDoc = new XDocument();
string str = @"C:TempMyXmlDoc.xml";
xDoc.Save(str);