【複数ファイルのファイル分割】


あるフォルダに保存された複数のテキストファイルについて、個々をファイル名の末尾に連番をつけて、56KBで分割するということを一括処理する方法を探しています。

具体的には、Janeで収集した2chのdatファイルたちを下記のツールでプレーンテキスト形式に変換し、それをポメラ(DM20)に保存し閲覧したいわけですが、このポメラには1ファイルあたり56KBという制限があるため、上記のような処理が必要となります。

DAT2HTML
http://tatsu01.at.infoseek.co.jp/

環境はWinXPです。自力でWinに移植されたsplitコマンドを使ってバッチファイルを書こうとしました挫折しました。フリーソフトやバッチファイルなど、良い方法があれば教えてください。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2010/09/30 17:53:53
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:dev_zer0 No.2

回答回数332ベストアンサー獲得回数25

ポイント75pt

まず、splitコマンドでファイルを56Kに分割します

この時、ディレクトリを作り、そこに分割ファイルを作成させるようにします

for %%f in ( *.dat ) do

  mkdir _%%f

  copy %%f _%%f

  split 56k _%%f\%%f

  rm _%%f\%%f

# hoge.datの場合、_hoge.dat/を作成し、その配下にxaa, xab ....

# というファイルが作成されます


次にフリーソフトの「Flexible Renamer」を落としてきて

サブフォルダ以下を対象にチェックを付けて

高度なリネームに「\f_????.txt」とすると

_hoge.dat/_hoge.dat_0001.txtとなります


気に入らなければ本ソフトで先頭の「_」や「.dat」を削除できますので

上手くリネームしてみてください。URLは下記です。

http://hp.vector.co.jp/authors/VA014830/FlexRena/

id:witt

ありがとうございました。役に立ちました。

教えてもらったプログラムを下記のように改造して、フォルダ名は例のソフトで変更してやっています。

@echo off

for %%f in ( *.txt ) do (

mkdir "%%f"D

split -b 50k "%%f"

ren x* x*.txt

mv "%%f" x*.txt "%%f"D

)

2010/09/30 17:52:59

その他の回答1件)

id:taknt No.1

回答回数13539ベストアンサー獲得回数1198

ポイント3pt

http://www.vector.co.jp/soft/win95/util/se088352.html

Div

こちらのソフトは いかがでしょうか?

id:witt

複数のテキストファイルについて処理することが本質問の必須要件です。

この要件を満たさない、単一のテキストファイルを分割するソフトは調べてきましたが、そのソフトはどうなんでしょうか?

本要件を満たすなら、ファイルでなく、フォルダやワイルドカードで指定する方法があるはずです。

2010/09/30 13:05:38
id:dev_zer0 No.2

回答回数332ベストアンサー獲得回数25ここでベストアンサー

ポイント75pt

まず、splitコマンドでファイルを56Kに分割します

この時、ディレクトリを作り、そこに分割ファイルを作成させるようにします

for %%f in ( *.dat ) do

  mkdir _%%f

  copy %%f _%%f

  split 56k _%%f\%%f

  rm _%%f\%%f

# hoge.datの場合、_hoge.dat/を作成し、その配下にxaa, xab ....

# というファイルが作成されます


次にフリーソフトの「Flexible Renamer」を落としてきて

サブフォルダ以下を対象にチェックを付けて

高度なリネームに「\f_????.txt」とすると

_hoge.dat/_hoge.dat_0001.txtとなります


気に入らなければ本ソフトで先頭の「_」や「.dat」を削除できますので

上手くリネームしてみてください。URLは下記です。

http://hp.vector.co.jp/authors/VA014830/FlexRena/

id:witt

ありがとうございました。役に立ちました。

教えてもらったプログラムを下記のように改造して、フォルダ名は例のソフトで変更してやっています。

@echo off

for %%f in ( *.txt ) do (

mkdir "%%f"D

split -b 50k "%%f"

ren x* x*.txt

mv "%%f" x*.txt "%%f"D

)

2010/09/30 17:52:59

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません