Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 使用批处理将txt中不需要的空格替换为逗号_String_Batch File - Fatal编程技术网

String 使用批处理将txt中不需要的空格替换为逗号

String 使用批处理将txt中不需要的空格替换为逗号,string,batch-file,String,Batch File,我有一个文本文件,其中包含一些信息,如下所示: 7253198760.294533963.581 7373198752.213 533954.046 739CT 198751.288 533952.902 在每一行中,参数之间都有空格,但空格(不是制表符)只是为了方便阅读 我需要它看起来像这样: 1550168040.682630305.751, 157516023.241630287.837, 15964TS、168008.317630272.508、 这是我的密码: @echo off se

我有一个文本文件,其中包含一些信息,如下所示:
7253198760.294533963.581
7373198752.213 533954.046
739CT 198751.288 533952.902

在每一行中,参数之间都有空格,但空格(不是制表符)只是为了方便阅读

我需要它看起来像这样:
1550168040.682630305.751,
157516023.241630287.837,
15964TS、168008.317630272.508、

这是我的密码:

@echo off
setlocal EnableDelayedExpansion
set LF=^


set "content="

for /f "delims=" %%x in (input.txt) do (
  set "content=!content!%%x!LF!"
)

:loop
if defined content (
  set "new=!content:  = !"
  if "!new!" neq "!content!" (
    set "content=!new!"
    goto :loop
  )
)
if defined content if "!str:~0,1!" equ " " set "content=!str:~1!"
if defined content if "!str:~-1!" equ " " set "content=!str:~0,-1!"

echo(!content!
set string=!content! & echo !string: =,! > output.txt
endlocal

pause > null

它将所有内容转换为一行,并在所有内容之间进行连接,而不使用空格。

由于最大字符串长度有限,连接到单个字符串是危险的。更好地自行处理每条生产线:

(for /f "tokens=1-3" %%a in (infile.txt) do ( 
    echo %%a,%%b,%%c,
))>outfile.txt

注意:空行将被忽略(将丢失)

请将文本样本数据作为文本而不是图像发布在此处,以便其他人可以轻松复制它们并使用它们来测试他们正在研究的预期答案……非常感谢!你帮了我很多忙!