2010-07-16 3 views
2

(XmlWriter xw = new XmlTextWriter (fcService.SetCIRIFilePath(), Encoding.UTF8)) { debts.Save (xw); xw.Flush(); }XDocument.Save XML에 잘못된 문자 3 개를 생성하는 중

내 채무 오브젝트는 LINQ to XML을 사용하여 채워진 XDocument 오브젝트입니다. 그러나 XML의 시작이 3 자 나는 그것을 저장할 때,이 메모장에서 잘 보이지만, 바이너리/16 진수 편집기를 열 때 보여줍니다

<?xml version 

이는이를 제 3 자에 의해 해석되고 중지하고 . 어떤 생각을 어떻게 그만 둘 수 있습니까?

답변

3

이 같은 바이트 순서 마크를 생성하지 않도록 UTF-8 인코더를 말해보십시오 :

// http://msdn.microsoft.com/en-us/library/s064f8w2.aspx 
using (XmlWriter xw = new XmlTextWriter(fcService.SetCIRIFilePath(), new System.Text.UTF8Encoding(false))) 
     { 
      debts.Save(xw); 
      xw.Flush(); 
     } 
+0

너무 감사합니다! – David