2012-11-07 85 views
0

我正尝试创建一个用于存储某个类的信息的XML文件。我将路径作为const设置为Info.xml。但XMLTextWriter未将XML文件保存到bin(debug/release)文件夹,而是将其保存到MyDocuments文件夹。当我试图检查文件是否存在与File.Exists(path),它的返回false。请有人请在这里指导我。xmlTextWriter不会将XML文件保存到bin文件夹中

我的代码看起来如下...

string BookName = "Book1" 
string AuthorName= "Author1" 
XmlTextWriter writer = new XmlTextWriter("Info.xml", Encoding.UTF8); writer.WriteStartDocument(); 
writer.WriteStartElement("Title"); 
writer.WriteString(BookName); 
writer.WriteStartElement("Author"); 
writer.WriteString(AuthorName); 
writer.WriteEndElement(); 
writer.WriteEndElement(); 
writer.WriteEndDocument(); 
writer.Close(); 
+6

发布代码总是有帮助的... – Sebastian

+2

你可以发布你使用过的代码吗? –

+2

我想你可以使用Application.StartupPath + Info.xml来保存并读取或者查找File.Exists!例如'Lineds.WriteXml(Application.StartupPath + @“//”+ testPlanName +“.xml”,XmlWriteMode.WriteSchema);' – Mullaly

回答

0

试试这个

public void SerializeToXML(YourClass yourObj) 
    { 
     if (!File.Exists("C:\\Info.xml")) 
      File.Create("C:\\Info.xml"); 
     XmlSerializer serializer = new XmlSerializer(typeof(YourClass)); 
     System.IO.TextWriter textWriter = new StreamWriter("C:\\Info.xml"); 
     serializer.Serialize(textWriter, yourObj); 
     textWriter.Close(); 
    } 

这将 “Info.xml” 保存到C:无论是在调试也不释放。 (如果不存在,它也会创建文件)。

看看这link以及它可能会有所帮助。

+0

大家好,感谢您的快速反应, – Developer

+0

我的代码看起来如下...字符串BOOKNAME = “第一册” 串AUTHORNAME = “作者1” XmlTextWriter的作家=新的XmlTextWriter( “Info.xml”,Encoding.UTF8 ); writer.WriteStartDocument(); writer.WriteStartElement(“Title”); writer.WriteString(BookName); writer.WriteStartElement(“Author”); writer.WriteString(AuthorName); writer.WriteEndElement(); writer.WriteEndElement(); writer.WriteEndDocument(); writer.Close(); – Developer

+1

忘了提及,我正在开发一个COM addIn和Application.startupPath给我的路径“C:\\ Program Files(x86)\\ Microsoft Office \\ Office14” – Developer

相关问题