Board logo

标题: [原创]for /f 在文件中取值错误问题 [打印本页]

作者: lukchen     时间: 2008-3-29 19:28    标题: [原创]for /f 在文件中取值错误问题
uid name mobile position college age gender memo
Hunter 李明 13500000000 22 0 20
Dong 王东 13500000001 40 0 20
DZH 邓辉平 13500000002 45 0 20
Xing 周星星 13500000003 25 0 20

如我在excel里编辑的用户信息,共8列,我现在想用for /f命令取任意一列,但是取值会出错。如下示,我想取年龄(age),可是却是空的,这列数据跑到position上去了。

for /f "tokens=1,2,3,4,5,6,7,8 delims= " %%a in (book.txt) do echo %%f

我试了一下发现因为前边几个数据是空的,所以会出错,把数据都填上就正常了,可是公司数据太多,没办法全部填写。所以请大家帮忙。

作者: abcd     时间: 2008-3-29 21:46
如果在excel中的话,建议用VBA比较方便,快捷

作者: balinger     时间: 2008-3-29 22:35
打开book.txt。
复制uid name之间的空格。
菜单---编辑----替换。
查找内容:粘贴两次。替换为:粘贴一次,输入*,再粘贴一次。
按两次全部替换。
数据是空的地方,就会有*。
for /f "tokens=1,2,3,4,5,6,7,8" %%a in (book.txt) do echo %%f

作者: lukchen     时间: 2008-3-31 11:11
3楼的朋友,你的这种方法不可以的,在excel里导出的时候,就少部分tab符号了。
我再想想从excel里出来的时候,想想办法.