大量の URL (約 100,000) を XML ファイルに (他のデータと共に) 保存しています。URL が少なくても問題なく動作しましたが、XML ファイルが非常に大きくなり (タグとインデントのために)、解析が遅くなりました。そこで、すべての URL を 1 つの XML 要素内にグループ化することを考えました。そのためには、区切り記号が必要です。例として、私はこれから行きたいと思います:
<document>
<bigGroupOfURLs>
<OneURL>
<nameOfData1>data1_1</nameOfData1>
<nameOfData2>data1_2</nameOfData2>
<URL>www.site1.com</URL>
</OneURL>
<OneURL>
<nameOfData1>data2_1</nameOfData1>
<nameOfData2>data2_2</nameOfData2>
<URL>www.site2.com</URL>
</OneURL>
</bigGroupOfURLs>
<someOtherData>...</someOtherData>
</document>
このようなものに (ただし、# は使用しません):
<document>
<bigGroupOfURLs>
data1#data2#www.site1.com#data1#data2#www.site2.com
</bigGroupOfURLs>
<someOtherData>...</someOtherData>
</document>
これらの URL は HTML ファイル内のタグから取得されるため、あらゆる種類の非標準文字が含まれる可能性があります。たとえば、次のような例が含まれる可能性があります。
<a href="http://ja.wikipedia.org/wiki/メインページ">メインページ</a>
<a href="http://en.wikipedia.org/wiki/Stack Overflow">Stack Overflow</a>
そこに、UTF-8 文字とスペースが表示されます。これらの URL は正しく解釈されているので、そこに表示されるとおりに保存したいと考えています。では、URL に決して表示されないことが保証されている文字は? 印刷可能な文字にしたいです。これは XML ファイル内にあることに注意してください</>
。