2016-09-30 73 views
-1

我有一個名爲test.txt的文本文件,其中有一些名爲PROP-VALUES的部分。使用批處理,我想用逗號替換每個其他回車,但只能在PROP-VALUES部分。附上原始文件test.txt並且固定檔測試fixed.txt我想用逗號代替回車回車

original

fixed

+2

這是......不容易在批量(這不是不可能的,但它不是簡單)。還請添加您寫入您的問題的任何代碼。如果您沒有編寫任何代碼,請執行此操作並將其添加到您的問題中。 – SomethingDark

+2

只需讀取文件,直到PROP-VALUES部分開始,然後合併值直到該部分結束。然而,你必須知道一個批處理文件不能處理一個.jpg圖像,就像你發佈的那個... – Aacini

+3

你是否......只是認真張貼文本文件的截圖? – ths

回答

1

當我看到「問題」這樣一個(有沒有很好的規範,也沒有代碼,甚至沒有一個幾個示例文本行!)我認爲我可以寫任何我想要的代碼,所以我無法抗拒嘗試瘋狂方法的誘惑!

@echo off 
setlocal EnableDelayedExpansion 

set LF=^ 
%Don't remove% 
%these lines% 
set "EOL=!LF!" & set "EOL2=!LF!" 

for /F %%a in (test.txt) do (
    if %%a equ PROP-SUMMARY set "EOL=!LF!" 
    set /P "=%%a!EOL!" < NUL 
    set "EOL0=!EOL!" & set "EOL=!EOL2!" & set "EOL2=!EOL0!" 
    if %%a equ PROP-VALUES set "EOL=," 
) 

這是test.txt的

4.12 
0 
1 
1 
21 
PROP-VALUES 
625 
4.12 
945 
3.64 
PROP-SUMMARY 
400 
400 
Thickness 

這是輸出:

4.12 
0 
1 
1 
21 
PROP-VALUES 
625,4.12 
945,3.64 
PROP-SUMMARY 
400 
400 
Thickness 
+1

我想象中的瘋狂方法涉及'certutil -encodehex',然後將'0d 0a'改爲'2c'。 – SomethingDark

+0

這是完美的,除了我需要用腳本的輸出修改原始文件。 – RyCar66