【发布时间】:2015-08-28 19:00:57
【问题描述】:
我无法弄清楚这个异常。也许我用错了这个xmlReader?
“System.UnauthorizedAccessException”发生在 mscorlib.dll 中。
附加信息:访问路径 'c:\example\extract' 是 拒绝。
我已经检查了 文件夹/文件 的权限,并已将完整的写入权限授予我电脑上的用户/管理员。 有什么建议吗?
XmlReader reader = XmlReader.Create("c:\\example\\extract");
XElement el = XElement.Load(reader);
reader.Close();
var items = el.Elements("values").Elements("values").DescendantNodes();
items = from item in el.Elements("values").Elements("values").Descendants()
where item.Attribute("name").Value == "name"
select item.FirstNode;
foreach(XNode node in items) {
Console.WriteLine(node.ToString());
}
【问题讨论】:
-
那么您是否在管理员模式下运行您的应用程序?您也可以通过像“\\extract.xml”这样的开头来使用 bin 目录的相对路径。为什么要专门c盘?
-
XmlReader 用于读取 XML 文件。看起来您正在指定目录。 “解压”是文件还是目录?
-
extract是目录吗? XmlReader.Create 需要包含文件名的完整路径,例如c:\\example\\extract\\output.xml -
@JeffPrince 它是一个目录.. 我正在尝试阅读,但我认为我可能使用 XmlReader 错误
-
字符串“c:\\example\\extract”中没有文件被引用,我会使用
Path.Combine(drive, folder, folder, file),以便处理目录结构并获取文件。设置一个断点并确保您真正进入并读取文件