找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 27421|回复: 6

[文本处理] [已解决]批处理如何实现多行变一行?

[复制链接]
发表于 2015-4-12 14:43:21 | 显示全部楼层 |阅读模式
本帖最后由 wangdao6699 于 2015-4-12 18:33 编辑

记事本内容如:

110:18
aaannnb

60:20

333369888
bat236




252.36.85
04 7A 68 65 6E 90 00


结果:

N行变成一行,以 | 作为分隔符

110:18|aaannnb|60:20|333369888|bat236|252.36.85|04 7A 68 65 6E 90 00
发表于 2015-4-12 15:02:58 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. (for /f "useback delims=" %%i in ("Your.txt") do <nul set /p=!str!&set "str=%%i|"
  4. <nul set /p=!str:~0,-1!)>$New.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
wangdao6699 + 1 感谢分享

查看全部评分

 楼主| 发表于 2015-4-12 16:44:18 | 显示全部楼层
回复 2# bailong360


    测试了一组出现结果竟是:36.93 |36.94 |36.98 |36.99|36.103
分隔符  |  前有空格

测试数据:


36.93
36.94
36.98
36.99
36.103
发表于 2015-4-12 18:04:34 | 显示全部楼层
回复 3# wangdao6699
  1.     @echo off & setlocal enabledelayedexpansion
  2. (for /f "delims=" %%a in (1.txt) do (
  3.         if not "!str!"=="" <nul set /p=^|
  4.         set str=%%a
  5.         <nul set /p=!str: =!
  6. ))>new.txt
  7. pause
复制代码
你的文本本来带有空格的

评分

参与人数 1技术 +1 收起 理由
wangdao6699 + 1 代码完美

查看全部评分

 楼主| 发表于 2015-4-12 18:30:41 | 显示全部楼层
本帖最后由 wangdao6699 于 2015-4-12 18:32 编辑

回复 2# bailong360


    代码不错
发表于 2015-4-12 18:35:21 | 显示全部楼层
来个VBS
  1. Dim fso,File1,File2
  2. Set fso = CreateObject("Scripting.FileSystemObject")
  3. Set File1= fso.OpenTextFile(".\测试.txt", 1 , True)
  4. Set File2 = fso.CreateTextFile(".\结果.txt", 2 ,True)  
  5. Do While File1.AtEndOfStream <> True
  6.     strtmp = Trim(File1.ReadLine)
  7.     If Len(strtmp) > 0 Then str=str&strtmp&"|"
  8. loop
  9.     File2.Write Left(str,Len(str)-1)
  10.     File1.Close
  11.     File2.Close
  12. MsgBox "完成!"
复制代码

评分

参与人数 1技术 +1 收起 理由
wangdao6699 + 1 感谢分享

查看全部评分

 楼主| 发表于 2015-4-12 19:21:08 | 显示全部楼层
回复 6# pcl_test


    感谢您分享,代码有效,学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 10:12 , Processed in 0.019703 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表