「みんな教えて! 選手権!!」開催のお知らせ

こんにちは。

batファイル、コマンドプロンプトからファイルを操作するとき、1行がやたらと長いファイルが扱えなくて困っています。

びっしりとタグが書かれたテキストファイルなのですが、このファイルの中の /> を >\n (「\n」は改行)として事前に置き換え処理をすることはできるのでしょうか。改行を入れてやれば、後処理でループするときに楽になるのですが。

もしくは、1行が異常に長くても処理できる方法などあるでしょうか?
for /f を使うと正しく反応してくれません。1行でメガ単位あるテキストなんですが・・・

A 回答 (3件)

OSの仕様で、コマンドプロンプトの1行における処理文字数に上限があったはずです。


他の言語からXMLファイルを処理するしか無いです。
    • good
    • 0
この回答へのお礼

ありがとうございます。
やはりこんな尋常じゃない長さの1行を処理できませんよね。
WSHでXML整形してから処理をする方向で考えてみます。

お礼日時:2012/12/05 07:25

バッチでは無理ですね。


VBScriptだとできるんじゃ無いかな。
    • good
    • 0
この回答へのお礼

ありがとうございます。
ですね。いろいろ組み合わせて乗り切ろうと思います。
参考になりました。

お礼日時:2012/12/05 07:26

perlがおすすめかなあと思います。


perlの特徴である正規表現、簡単に書ける、インタプリンタ
が非常に問題にマッチします。
バッシュと同じくらいの難易度ではないかと思うので、試してみてはいがでしょうか
    • good
    • 0
この回答へのお礼

ありがとうございます。
今回の件に限らず、perlができれば何かと便利ですよね。
10年以上前に、見よう見まねで掲示板スクリプトをいじったのが最初で最後でしたが、今年の年末あたりにperlを勉強しようと思います。

今回の件については、外部のプログラムに整形してもらってから処理に入るかたちにしようと思います。

お礼日時:2012/12/05 07:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報