Board logo

标题: 如何读取长文件名里的内容? [打印本页]

作者: 23112656     时间: 2008-7-31 04:41    标题: 如何读取长文件名里的内容?
大体意思是这样: 我在目录下创建了test.txt和一个用%date%创建的txt文件,也就是这样的:2008-07-31 星期四.txt这样的格式,但是问题就出在这了,为什么下面的代码只能读取test.txt里的内容?而却读取不了"2008-07-31 星期四.txt"这种长文件名还带了空格的文件呢? set t=0 for /F "eol== tokens=1 delims= " %%a in (出问题的地方) do ( set /A t+=%%a ) echo %t% 我本来的意思是想把文本里的内容第一列数字相加的,把出问题的地方改为test.txt就没问题,但是改为时间格式的那个文本就不行啊,请高手支招啊```

作者: pusofalse     时间: 2008-7-31 07:43
2008-07-31 星期四.txt 有空格,需加""闭合,同时for的选项里面加usebackq ,在eol==之前 [ Last edited by pusofalse on 2008-7-31 at 07:45 AM ]

作者: HAT     时间: 2008-7-31 10:18
@echo off
set t=0
for /F "usebackq eol== tokens=1 delims= " %%a in ("2008-07-31 星期四.txt") do (
  set /a t+=%%a
)
echo %t%

作者: 23112656     时间: 2008-7-31 16:21
Originally posted by HAT at 2008-7-31 10:18 AM:
@echo off
set t=0
for /F "usebackq eol== tokens=1 delims= " %%a in ("2008-07-31 星期四.txt") do (
  set /a t+=%%a
)
echo %t%
太感谢了`不过我发现改成 for /F "usebackq eol== tokens=1 delims= " %%a in (type "%date% ???.txt") do ( set /a t+=%%a ) echo %t% 也有效哦`谢谢啊

作者: HAT     时间: 2008-7-31 17:31
4楼的代码无效吧? 如果你想用type,至少用到单引号嘛:)

作者: 23112656     时间: 2008-8-1 04:27
Originally posted by HAT at 2008-7-31 05:31 PM: 4楼的代码无效吧? 如果你想用type,至少用到单引号嘛:)
呵呵```忘记写上了`大体意思就是那样

作者: 23112656     时间: 2008-8-1 04:28
Originally posted by HAT at 2008-7-31 05:31 PM: 4楼的代码无效吧? 如果你想用type,至少用到单引号嘛:)
呵呵```忘记写上了`大体意思就是那样