- CSV やテキスト内の 制御文字を、別の制御文字に置換できますか?
- Convert XLS では「ファイルに対する特殊処理」を利用して別の 制御文字に置換できます。
以下では、ログファイル内の 制御文字の LFを CRLF に置換する方法をご案内します。
ページ下部では、CLI での操作方法もご案内しています。
※UTF-8 または ANSI エンコードが対象 (UTF-16 はサポートしていません。)
【GUI での操作手順】
- Convert XLS を起動して をクリックした後、「実行するアクションの選択」で「ファイルに対する特殊処理」を選択します。
- 特殊処理のリストから 「(*.*) 文字列の検索・置換」を選択します。
- 入力ファイルの [ファイル] ボタンをクリックしてファイルを指定します。
- 出力ファイルの [ファイル] ボタンをクリックして出力するフォルダに移動後、ファイル名を入力して [開く] をクリックします。
フィールドへの直接入力も可能です。(入力と同じファイルパスの場合は上書きされます。)
- 検索文字と置換文字を指定します。
- 文字列がセットされたことを確認後、 をクリックして処理を開始します。
(OSの地域や言語が日本の場合に文字化けしたような文字で表示されてしまいますが、結果に影響はありません。)
※フォルダ単位で一括処理をする場合は、入力ファイルと出力ファイルのフィールドで “\フォルダパス\*.txt” のように指定します。
【CLI のコマンド例】
ConvertXLS.EXE /S”C:\Task\demo-A.txt” /T”C:\Task\demo-B.txt” /P56 /F1 /1 ゥ10ゥ /2 ゥ13ゥゥ10ゥ
上記コマンドのスイッチの内容は以下の通りです。
- /F56:特殊処理「(*.*) 文字列の検索・置換」の指定
- /F1:ファイル形式の指定 (1 はテキスト/CSV を指定)
- /S:入力ファイルを指定 (引用符を推奨)
- /T:出力ファイルを指定 (引用符を推奨)
- /1 #:検索対象文字を指定 (#には検索文字を指定)
※制御文字を指定する場合 ゥ の文字で囲む必要があります。(LF は ゥ10ゥ) - /2 #:置換文字を指定 (#には置換文字を指定)
※制御文字を指定する場合 ゥ の文字で囲む必要があります。(CRLF は ゥ13ゥゥ10ゥ)
フォルダ内の複数のファイルに対して処理を実行したい場合は、以下のように記述します。
【CLI のコマンド例/フォルダ単位】
ConvertXLS.EXE /S”C:\Task\IN\*.txt” /T”C:\Task\OUT\*.txt” /P56 /F1 /1 ゥ10ゥ /2 ゥ13ゥゥ10ゥ
入力/出力ファイルの指定時に、フォルダ名の後にワイルドカードと拡張子を追加します。
- ConvertXLS.EXE からの記述での開始には環境変数の設定が必要です。
環境変数が未設定の場合は、ファイルパスの指定が必要です。 - CLI での制御文字を指定する際は、制御文字を指定する値の前後を ゥ で囲む必要がありますが、OSの地域や言語が日本の場合、文字化けしたように見えます。
文字化けした状態での指定が必要となるため、一度 GUI で値を指定してコピー&ペーストでテキストエディタに貼り付けてご利用ください。