2013-02-11 5 views
5

実際の(エンコードされていない文字の)バイナリブロック(定義済みのバイトオーダーとワード長を持つもの)をXMLファイルに統合できますか?XMLの実際のバイナリブロック(C++)?

+2

興味深いを参照してください、どのように1ブロックの終わりを検出するのでしょうか? –

+1

''セクションで試しましたか? XMLは基本的にテキスト指向のフォーマットなので、実際のバイナリデータを持つことはできません。 –

+1

@ThomasMatthews私は、ブロックの長さがいくつかの属性でエンコードされるべきだと思います。 [VTKファイル形式](http://www.vtk.org/VTK/img/file-formats.pdf)の仕様でも同様のことが可能です。 – Massimiliano

答えて

7

いいえ、xml標準の範囲内ではありません。

解析されたXMLエンティティで許容される文字セットは、タブ、改行、改行、および有効なユニコード文字です。この許容範囲外にある様々なバイトがあり、最も顕著に0x0であるが、0x1-0x8,0xB-0xCおよび0xE-0x1F(すなわち、ほとんどの値は古典的にASCII制御文字である)である。

数値エンティティとして使用することもできません。有効な文字ではないためです。すなわち、次のように検証しません。

<test> 
    Testing ^A: &#x1; 
</test> 

http://www.w3.org/TR/2006/REC-xml11-20060816/#charsets

関連する問題