[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]BAT如何把数据批量分割输出成多列?

本帖最后由 lantern 于 2013-6-4 01:08 编辑

吐槽下联通网上营业厅导出的详单通话时长显示方式,没法加总...

求助:
1、把“AB分CD秒”类 输出成两列     AB    CD
2、把“EF秒”类 输出成两列    0    EF
3、保持原行序

通话时长
1分30秒
38秒
1分03秒
18分48秒
50分13秒
51秒
1分15秒
1分11秒
52秒
1分44秒
42秒
09秒
1分15秒
3分28秒
1分04秒
12秒
27秒
31秒
1分17秒
1分24秒
2分54秒
08秒
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 lantern 于 2013-6-4 01:06 编辑
去掉 if "%%b"=="" (echo 0分%%a秒) else echo %%a分%%b秒 这里面你不向显示的字符
自己动下手哦
terse 发表于 2013-6-4 00:10
  1.     @echo off
  2.     (for /f "tokens=1,2 delims=分秒" %%a in (a.txt) do (
  3.             if "%%b"=="" (echo 0 %%a) else echo %%a %%b
  4.     ))>b.txt
复制代码
谢谢

TOP

去掉 if "%%b"=="" (echo 0分%%a秒) else echo %%a分%%b秒 这里面你不向显示的字符
自己动下手哦

TOP

CrLf 发表于 2013-6-3 17:57

谢谢,用完这个代码再加工一下达到了我的目的

改改能不能一部到位?谢谢
a.txt
2分55秒
2分30秒
27秒
1分
13秒
1分40秒
2分05秒
2分03秒
2分49秒
6分12秒
4分03秒
21秒
1分28秒

b.txt
2        55
2        30
0        27
0        1
0        13
1        40
2        05
2        03
2        49
6        12
4        03
0        21
1        28

TOP

  1. @echo off
  2. (for /f "tokens=1,2 delims=分秒" %%a in (a.txt) do (
  3. if "%%b"=="" (echo 0分%%a秒) else echo %%a分%%b秒
  4. ))>b.txt
复制代码
1

评分人数

TOP

分秒作分隔符 再加个判断就可以

TOP

返回列表