0
我有一個自動創建的包含多列的CSV文件。其中一列被稱爲「sn」。我需要確保sn永遠不是CSV文件中的第一列。不幸的是我無法編輯創建程序的程序。批量移動CSV文件中的列
因此,在一個批處理文件,我想:
- 開放CSV
- 檢查其中的sn列是
- 如果它是在第1列,然後將其移動到另一列(列2是精)
- 保存更改
這是可能在批處理文件?
謝謝。
我有一個自動創建的包含多列的CSV文件。其中一列被稱爲「sn」。我需要確保sn永遠不是CSV文件中的第一列。不幸的是我無法編輯創建程序的程序。批量移動CSV文件中的列
因此,在一個批處理文件,我想:
這是可能在批處理文件?
謝謝。
@ECHO OFF
SETLOCAL
(
SET "choosing="
SET "movecol="
FOR /f "tokens=1*delims=," %%a IN (q20995223.txt) DO (
IF NOT DEFINED choosing (
IF "%%a"=="sn" SET movecol=Y
SET choosing=N
)
IF DEFINED movecol (ECHO(%%b,%%a) ELSE (ECHO(%%a,%%b)
)
)>newfile.txt
GOTO :EOF
如果在第一行的第一列包含sn
,則剩餘的列向左移動一個和sn
列移動到最後。否則,該文件僅轉載至newfile.txt
q20995223.txt
是我的測試文件。將它們重命名爲適合您的任務。
太棒了。謝謝! – user2145047
什麼操作系統,什麼編程語言,任何約束?你嘗試了什麼? – Andy
明天你會要求使用批處理文件編寫數據庫服務器。爲什麼不使用任何真正的編程語言來做到這一點? – smnbbrv
你的問題的答案是「是的,這是可能的」。但相當費力。使用紅寶石和csv模塊,這是微不足道的。只需谷歌「紅寶石csv教程」,你可以在30分鐘內爲這個任務寫一個腳本。 – Draugr