I次のコードを持っている:のXmlWriterエンコーディングが発行
MemoryStream ms = new MemoryStream();
XmlWriter w = XmlWriter.Create(ms);
w.WriteStartDocument(true);
w.WriteStartElement("data");
w.WriteElementString("child", "myvalue");
w.WriteEndElement();//data
w.Close();
ms.Close();
string test = UTF8Encoding.UTF8.GetString(ms.ToArray());
XMLが正しく生成されます。しかし、私の問題は文字列 'test'の最初の文字はï(char#239)なので、それはいくつかのxmlパーサーにとって無効になっています。正確に私は間違って何をしていますか?
私は最初の文字の後にちょうど始めることで問題を解決できると知っていますが、問題の原因を単純に突き止めるよりも、その理由を知りたいと思います。
ありがとうございます!
+1 BOMはもう一度私を連れて来ました。ありがとう。 – bendewey
BOMは毎回私を受け取ります...デフォルトのEncoding.UTF8にはBOMが含まれています。 –