7

バイナリを Base64 として保存する際のオーバーヘッドの代わりに、CDATA を使用するかコメントアウトするなどして、2 バイトのバイナリ ストリームを XML ファイルに直接格納できるかどうか疑問に思っていました。

4

4 に答える 4

13

Nul 文字 (C の '\0') は、エスケープ ( & #0; ) であっても、XML のどこでも有効ではありません。

于 2009-02-02T11:07:14.447 に答える
4

XML はプレーンテキスト形式です。バイナリ データの保存には使用しないでください。バイナリ BLOB を別のファイルに配置し、これらのファイルを参照する要素を XML に追加します。すべてのバイナリ BLOB を 1 つのファイルに格納する場合は、オフセット属性などを追加します...

于 2009-02-02T11:27:48.257 に答える
-1

CDATA として保存できますが、一部のバイト シーケンスが CDATA セクションを閉じる有効な XML として評価されるリスクがあります。http://www.w3.org/TR/2006/REC-xml-20060816/#sec-cdata-sectをざっと見てみると、「]]>」以外の任意の文字列を使用できるようです。有効な XML charも見てください。

于 2009-02-02T11:09:23.927 に答える