2012-11-07 7 views
0

클래스의 일부 정보를 저장하기위한 XML 파일을 만들려고합니다. 나는 경로를 Info.xml으로 설정된 const로 주었다. XMLTextWriter은 bin (debug/release) 폴더에 XML 파일을 저장하지 않고 MyDocuments 폴더에 저장합니다. 파일이 File.Exists(path)과 함께 존재하는지 확인하려고했을 때 false가 반환됩니다. 누군가 제발 여기로 안내 할 수 있어요. 내 코드는 아래와 같습니다xmlTextWriter가 bin 폴더에 XML 파일을 저장하지 않습니다.

...

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(); 
    } 

이것은 당신의 C에 "Info.xml"를 절약 할 수 :, 디버그 나 릴리스도보십시오. (파일이 아직 존재하지 않는 경우에도 파일을 만듭니다.)

link도 확인하십시오. 도움이 될 것입니다.

+0

안녕, 빠른 응답에 대한 감사, – Developer

+0

내 코드 문자열은 bookname = "Book1을" 문자열 AUTHORNAME = "Author1" 하여 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

관련 문제