- ベストアンサー
XML文書の追加書き込みは可能?
毎回お世話になります。 今回の質問なのですが、あるXML文書に新しいデータ(タグ+データ+タグ)をどんどん追加していきたいのですが、いい方法はないでしょうか? たとえば、 <?xml version="1.0" encoding="Shift_JIS" ?> <test> <url></url> <url></url> : : <url></url> </test> といった具合に、<url>をどんどん増やしていきたいのです。 回答よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
</test>を検索して<url></url></test> で置換すればいいと思いますが、Javaでプログラムを作らなくてもsedなどのエディタで操作することも出来ます。 そういうことでしょうか。
その他の回答 (1)
- nta
- ベストアンサー率78% (1525/1942)
テキストエディタは常にファイル全体をメモリ上に展開しなければ操作できないというものばかりではありません。ストリームから読み込んだものをバッファ上で処理するというエディタもあります。とはいえ、一応一通りはファイルを読みとる必要はあります。 ファイルサイズが100MBもあって一通り読みとるのが短時間では不可能な場合には適当なサイズでファイルを分割しながら追加していけばいいのではないかと思います。読み出し時にファイルを連結するためのパーサのプログラムを書かなければなりませんが、アクセスが多いのであればバッファリングやバックグラウンドの連結処理を考える必要があります。しかし、そんなに大きなXMLのデータをインターネットで配信することは少ないでしょうね。 汎用コンピュータでは「直接編成ファイル」があり、たとえば<url><url>ごとに別のブロックに格納できますが、PCのOSではサポートされているものを知りません。
補足
返答ありがとうございます。 少し言い忘れていたので補足します(^_^;) たぶん上記のやり方だと一度メモリに全ソースを展開しなければならないと思うんです。 メモリに展開しないでできる方法はないでしょうか? 分かりにくくてすいません。 ずっと考えてるんですが、恐らくできないと予想はしています… もし、上記以外で何かいい案があれば書き込みよろしくお願いします。