- PR -

DOMツリーをXMLファイルへ書き出す時インデントをつけたい

投稿者投稿内容
井上孝司
ぬし
会議室デビュー日: 2001/09/08
投稿数: 668
お住まい・勤務地: 東京都
投稿日時: 2002-01-28 15:46
井上です。
ファイルに書き出す際に、正規化してから出す方法はないんでしょうか。
でも、いちいちノードごとに正規化するのも大変かぁ…
_________________
www.kojii.net
miki
大ベテラン
会議室デビュー日: 2001/09/21
投稿数: 174
お住まい・勤務地: 東京都八王子市
投稿日時: 2002-01-28 16:08
XMLの空白や改行の扱いについての解説記事がありました。

http://www.atmarkit.co.jp/fxml/rensai/xmlwomanabou10/learning-xml10.html

プログラムで頑張るしかないのでは。
いい方法が見つかったら教えてください。
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2002-01-28 23:06
データ物のXMLならば、XSLTトランスフォームで恒等変換(ほぼ)して
インデントを付加してからファイル出力してもいいのでは。
<xsl:output ... indent="yes"....>
変換時に項目前後の空白のトリムもできますし。

[ メッセージ編集済み 編集者: MMX 編集日時 2002-01-28 23:13 ]
けろたん
会議室デビュー日: 2002/01/21
投稿数: 10
投稿日時: 2002-01-29 09:57
ありがとうございます。
やはり、インデントに関しては、自分で工夫しないと出来ないのですね。
頑張ってみます!

基本的には、何度も更新するようにはできていないんですよね。。。
XMLの操作って難しいです・・・
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2002-01-29 13:22
XMLエディタで開いて編集するのが正解かな、ですね
けろたん
会議室デビュー日: 2002/01/21
投稿数: 10
投稿日時: 2002-01-30 09:30
MMXさんに質問です。
「XMLエディターで編集する」って言うのがよく分からないのですが、具体的にはどういった意味なんでしょうか・・?
よろしかったら、教えていただけませんか???
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2002-01-30 12:26
XMLエディタは テキストエディタの画面と同じテキストビュー、要素をTree表示して
操作するビュー(当然インデント付き)、要素名+属性などの色強調などで動作します。
自分で整形したテキストで維持管理しなくともよい。
保存するとしても、表示直前にインデントを付けて、見終わったら行頭空白全消去
で保存して置くほうが安定でしょう(テキストエディタで簡単操作)。
XMLエディタには便利機能がほかにもありますが。
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2002-01-31 10:41
類似記事ありました、Q: Too many newlines?
http://www.xml.com/lpt/a/2002/01/30/q-and-a.html
XSLTを多重にかけるときは、ありそうです。(データ更新とか)。
インデントスペースを維持した形で保持するなら、自分でインデントスペースを認識しないといけなくなります。

関連は XML の コマンドライン処理 で xmlpretty とか
http://www.xml.com/lpt/a/2002/04/17/perl-xml.html
HTML→XML のxmllint とかも興味深い
日本語で動くかが??なのが不満ですが。

[ メッセージ編集済み 編集者: MMX 編集日時 2002-04-18 14:11 ]

スキルアップ/キャリアアップ(JOB@IT)