楼 主
[求助]使用for读取文本内容,但遇到空格就会截断
发表于 2008-07-27 02:25 · 中国 四川 成都 锦江区 电信
初级用户
★★
积分 159
发帖 56
注册 2006-09-15 10:31
19年会员
UID 62663
状态 离线
比如 我文本中是 app #2
那么for出来的就是 app
而我想要 app #2
请问应该怎么读取
第 2 楼
发表于 2008-07-27 07:47 · 中国 广东 广州 电信
银牌会员
★★★
积分 1,206
发帖 517
注册 2007-03-25 01:18
19年会员
UID 82819
性别 男
状态 离线
自己修改截断的方式:
仔细观察,会发现大家实际使用会是
delims=截断符号,然后才是tokens=1,2*之类的。。
这样就可以去掉空格的影响。。
知,不觉多。不知,乃求知
第 3 楼
发表于 2008-07-27 11:21 · 中国 四川 成都 电信
初级用户
★★
积分 159
发帖 56
注册 2006-09-15 10:31
19年会员
UID 62663
状态 离线
是这样的,这个需要处理的文本中可能是 app #2 这种中间有空格的词 也可能是 只是 app 的没有空格存在的词
比如 app.txt文本中的内容是:
app #2
app #1
app
app1
所以我使用
for /f "tokens=1,2 delims= " %%a in (app.txt) do
语句就只客户取出类似 app #2 中间有空格的词了 而取不到app
所以我想知道一个通用的语句来读取上面2种情况的词
[ Last edited by lfzzj on 2008-7-27 at 11:25 AM ]
第 4 楼
发表于 2008-07-27 11:41 · 中国 广东 中山 电信
初级用户
★
积分 126
发帖 47
注册 2007-07-02 17:00
19年会员
UID 92952
性别 男
状态 离线
你是不是想要读取整行的内容?
你试试这样看行不
for /f "tokens=1* delims=" %%a in (app.txt) do (echo %%a)
第 5 楼
发表于 2008-07-27 11:49 · 中国 广东 广州 电信
银牌会员
★★★★
SuperCleaner
积分 2,362
发帖 1,133
注册 2008-02-02 21:36
18年会员
UID 110072
性别 男
状态 离线
for /f "tokens=*" %%a in (app.txt) do echo %%a
第 6 楼
发表于 2008-07-27 12:26 · 中国 四川 成都 电信
初级用户
★★
积分 159
发帖 56
注册 2006-09-15 10:31
19年会员
UID 62663
状态 离线
论坛跳转: