XmlTextReader reader = null; if (File.Exists("BlockSet.xml")) { //优先读取外部BlockSet.xml文件并把信息写入blockInfo内 reader = new XmlTextReader("BlockSet.xml"); } else { //如果BlockSet.xml文件不存在,则从嵌入资源内读取BlockSet.xml Assembly asm = Assembly.GetExecutingAssembly(); Stream sm = asm.GetManifestResourceStream("BlockSet.xml"); reader = new XmlTextReader(sm); }
我事先已建立XML文件,但是执行这段代码的时候就会报错,经调试,sm的值为null
要么是你的路径不对,要么就是你的那个xml不符合要求,可以catch一下看看
谢谢,路径改成绝对路径了,不过还有些数据没传进来,xml其实还没怎么学过
你的文件路径不对吧
嗯,我设成绝对路径,有些参数传进来了,不过还是有另一些参数没有传进来,这又是怎么回事呢
sm的值为空,说明File.Exists("BlockSet.xml")=false 即没有BlockSet.xml这个文件。
BlockSet.xml都没有,Stream sm = asm.GetManifestResourceStream("BlockSet.xml"),sm的值当然就为空了
貌似在本机是会报错的,我之前遇到过就是说没有权限,然后部署到服务器就可以了。