急:XML文件加载时候报错,什么原因,大家看一下

gwang119 2008-07-17 10:43:39
以下是错误信息:

at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
at System.Xml.XmlDownloadManager.GetStream(Uri uri, ICredentials credentials)
at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri, String role, Type ofObjectToReturn)
at System.Xml.XmlTextReaderImpl.OpenStream(Uri uri)
at System.Xml.XmlTextReaderImpl.PushExternalEntity(SchemaEntity entity, Int32 entityId)
at System.Xml.XmlTextReaderImpl.DtdParserProxy_PushEntity(SchemaEntity entity, Int32 entityId)
at System.Xml.XmlTextReaderImpl.DtdParserProxy.System.Xml.IDtdParserAdapter.PushEntity(SchemaEntity entity, Int32 entityId)
at System.Xml.DtdParser.HandleEntityReference(XmlQualifiedName entityName, Boolean paramEntity, Boolean inLiteral, Boolean inAttribute)
at System.Xml.DtdParser.HandleEntityReference(Boolean paramEntity, Boolean inLiteral, Boolean inAttribute)
at System.Xml.DtdParser.GetToken(Boolean needWhiteSpace)
at System.Xml.DtdParser.ParseSubset()
at System.Xml.DtdParser.ParseInDocumentDtd(Boolean saveInternalSubset)
at System.Xml.DtdParser.Parse(Boolean saveInternalSubset)
at System.Xml.XmlTextReaderImpl.ParseDoctypeDecl()
at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
at System.Xml.XmlTextReaderImpl.Read()
at System.Xml.XmlLoader.LoadNode(Boolean skipOverWhitespace)
at System.Xml.XmlLoader.LoadDocSequence(XmlDocument parentDoc)
at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)
at System.Xml.XmlDocument.Load(XmlReader reader)
at System.Xml.XmlDocument.Load(TextReader txtReader)
at Com.Founder.NewsBridge.FTPReceive.FTPRceiveActor.LoadXMLFile(FileInfoDTO fidto)

我用的加载方法是:
              XmlDocument result = null;
StreamReader sr = null;
try
{
sr = new StreamReader(filepath, Encoding.Unicode);
result = new XmlDocument();
result.Load(sr);
sr.Close();
}
catch (Exception e)
{
try { if (sr != null) sr.Close(); }
catch (Exception ex) { }


// TODOLOG
}


很着急,不知道为什么?在别人机器上好用,在我自己这就报错,大家帮帮忙
...全文
215 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jzywh 2008-07-17
  • 打赏
  • 举报
回复
System.IO.__Error.WinIOError ?


请确认文件路径是否正确, 文件是否存在, 是否有权限访问
ericzhangbo1982111 2008-07-17
  • 打赏
  • 举报
回复
XmlDocument result = null;
StreamReader sr = null;
try
{
if(File.Exists(filepath))
{
sr = new StreamReader(filepath, Encoding.Unicode);
result = new XmlDocument();
result.LoadXml(sr.ReadToEnd());
or
直接loadxml文件
result.Load(filepath);

sr.Close();
}
}
catch (Exception e)
{
try { if (sr != null) sr.Close(); }
catch (Exception ex) { }


// TODOLOG
}
宝_爸 2008-07-17
  • 打赏
  • 举报
回复
查看异常信息,应该是文件是否存在,权限什么的问题。
jamesfay 2008-07-17
  • 打赏
  • 举报
回复
路径没找到

加一句话看看if (!File.Exist(filepaht)) Console.writeline("File not exist...");
kbryant 2008-07-17
  • 打赏
  • 举报
回复
友情帮顶
yagebu1983 2008-07-17
  • 打赏
  • 举报
回复
文件路径的问题!!
wocow2316 2008-07-17
  • 打赏
  • 举报
回复
可能是的流已经指向末尾
你可以:
sr.Position=0;
然它从头开始

110,891

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧