Board logo

标题: [文件操作] [已解决]批处理分割文本内容并赋值给变量 [打印本页]

作者: lee103    时间: 2012-12-5 10:19     标题: [已解决]批处理分割文本内容并赋值给变量

有个文件a.text,内容为:
  1. 2012110421746001051500005002178591
  2. 2012110310025000029005001250001
  3. 2012110310025000029005002366485
复制代码
每段用0x01隔开,现在需要将每行分割出来赋值到相应变量,比如第一行201211赋值给a,04赋值给b,以此类推,然后输出这些变量;
循环处理每行并输出
请问大大们如何处理啊
作者: BAT-VBS    时间: 2012-12-5 11:40

  1. @echo off
  2. for /f "tokens=1-6 delims=" %%a in (a.txt) do (
  3.     set a=%%a
  4.     set b=%%b
  5.     set c=%%c
  6.     set d=%%d
  7.     set e=%%e
  8.     set f=%%f
  9.     setlocal enabledelayedexpansion
  10.     echo !a! !b! !c! !d! !e! !f!
  11.     endlocal
  12. )
  13. pause
复制代码

作者: lee103    时间: 2012-12-5 14:50

BAT-VBS 发表于 2012-12-5 11:40



    谢谢,那如果变量比较多,可能不止6列,能不能动态赋值呢
作者: BAT-VBS    时间: 2012-12-5 15:14

回复 3# lee103


    for命令没有一个参数来表示最后一列,如果需要动态判断列数,代码会比较冗长。
作者: lee103    时间: 2012-12-5 16:55

回复  lee103


    for命令没有一个参数来表示最后一列,如果需要动态判断列数,代码会比较冗长。
BAT-VBS 发表于 2012-12-5 15:14


不需要动态判断列数,列数是固定的,只是说可能比较多,比如100列,如果一个一个赋值的话,那得写100行,不现实,我是想能不能动态赋值




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2