2011年9月7日水曜日

XMLドキュメントの改行表現は文字参照とすべきか


XMLドキュメントの改行コードは、LF(C#では\n)とされているが、この改行コードの解釈はソフトウェアに任されており、必ずしも改行表現されるものではない。

このため、10進数または16進数で表す文字参照を用いることが、最も確実な改行表現とされる。しかし本当に文字参照を用いるようにするべきなのか、余計な作業が増えてしまうのではないだろうか?

これは、C#(.NET Framework)で、さらにXDocument.Saveメソッドに限定された話かもしれないが、通常Saveメソッドを用いて保存すると改行は\nで保存される。

簡単に改行を文字参照に変えるオプションなどはなさそうだ。もしかするとドキュメントに何らかの属性を与えるなど、何らかの方法で文字参照に変換されるのかもしれないが、あったとしても全く知らない状態で調べるには手間と時間がかかるのは確かだ。


Saveメソッドで変換できないとなると、String.Replaceメソッドなどを用いて変換するしかなく、自分でプログラミングしてXMLファイルを書き換えねばならない。XDocument.Saveメソッドで保存したものにさらに手を加えるのは、抵抗を感じる。また、XDocument.Loadメソッドで読み込めるか、といった確認作業がどうしても必要となり、また手間と時間がかかってしまう。


もちろん保存するXMLファイルがどんなソフトウェアで使われるか不確定な場合など、永続性、確実性が求められる場合は手間や時間などといっていられないので、プログラミングはする必要があるだが。


つまり、使うソフトウェアが決まっている、また.NET Frameworkでしか使わないというような、ある程度限定されている場合については、それほど文字参照にこだわる必要はないように思う。

0 件のコメント:

コメントを投稿