から、私は中国のポストを含むXMLファイルを作成していますし、それが働いているように見えたが、私はエラーを取得開始しました:エンコーディングエラーXML
このページは以下のエラーが含まれています。ライン上の
エラーを列25の4165:入力が適切ではありませんUTF-8、エンコードを示します! バイト:0x0B 0xC3 0xA5 0xC2 以下は、最初のエラーまでのページのレンダリングです。
結果ファイルのいくつかを開こうとすると、それが参照する行に中国語の文字が含まれていますが、これは状況によってのみ発生し、テキストには時々その文字が含まれていることが予想されます。そのフィールドのテキストが常に正しくエンコードされるようにするにはどうすればよいですか?私はなぜまだ問題が理解されていません。
Public Shared xwriter As XmlTextWriter = New XmlTextWriter(xmlfile, Encoding.UTF8)
xmltextwriterが正しく宣言されていることを確認します。
EDIT:
問題は、私はvb.netを使用してapparantlyそれがUTF-16のすべてをエンコードするので、私は、これは罰金であると仮定していることです。問題は、私が受け取っているテキストが恐らく二重にコード化されているか、間違ってコード化されているため、使用する前にそれをきれいにする必要があるということです。私のXMLは有効です。
編集:私は私のデータを修正する必要がある場合は
は、私の質問は、私は、特定のテキストに使用されているものエンコーディングを検出する方法で、どのように私はxmlファイルで見ることができUTF8形式に変換しますファイルを有効にします。
あなたのエンコーディングの問題はわかりませんが、私の主な用途は中国語のテキストを保存する場合はUTF8を使用しません。ほとんどの場合、UTF16がより効率的になります。 – Woody
問題は私がvb.netを使用していることとapparantly utf-16のすべてをエンコードするので、これは問題ないと思います。問題は、私が受け取っているテキストがおそらく二重にエンコードされているため、使用する前にそれをきれいにする必要があるということです。 – vbNewbie
どこからテキストを受け取って「二重にコード化されていますか?」とはどういう意味ですか?あなたが悪いデータを書いているのであれば、それを正しく得る機会はありませんので、書き込む前にデータを修正してください – Woody