SSブログ

CSVファイルの空データ部分に文字を入れるバッチファイル [コンピュータ]

CSVファイルの空データ部分に文字を入れるバッチファイル
2023/12/05

WindowsのバッチファイルでCSVファイルを操作する場合に空データがあるとそこを飛ばして処理されてしまってなんかうまく動作しないので、空データ部分に適当な文字を入れるためのバッチファイル。

今回の作成例では元ファイルで使用しないデータとして●を指定している。
バッチ実行前のイメージ「,2,3,4,,,,,9,」
バッチ実行後のイメージ「●,2,3,4,●,●,●,●,9,●」

元のcsvファイル名を、input.csv
処理後のcsvファイル名を、output.csv

バッチファイルでの処理内容としては
1、行の最初が「,」であれば「●,」に書き換え
2、行の最後が「,」であれば「,●」に書き換え
3、途中に「,,」があれば「,●,」に書き換え


バッチファイル
----------
@echo off
setlocal enabledelayedexpansion

type nul>output.csv

for /f "usebackq delims=" %%a in (input.csv) do (
set "line=%%a"
if "!line:~0,1!"=="," set "line=●!line!"
if "!line:~-1!"=="," set "line=!line!●"
set "line=!line:,,=,●,!"
set "line=!line:,,=,●,!"
echo !line!>>output.csv
)

pause
----------

実行結果で文字化けする場合は文字コードが「ANSI」とか「Shift_JIS」かを確認する。

あとがき
素直にエクセルとか専用ソフトとかで処理すればいいかもだが何らかの理由でバッチファイルしか使えない場合のためにメモを残す。







nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。