本帖最后由 fatcat 于 2012-5-1 13:11 编辑
论坛里有几个帖子讨论了 变量, set /p 最大长度的问题, 常和 8192 这个数字相关
for %%a in (str) 中, str 可接受的最大长度是多少呢, 是以字节计, 还是以字符计呢, 这些又如何能证实呢?
抛砖引玉, 下面针对 单字节字符 作了个简单测试, 但不足以给出什么结论- @echo off & setlocal enabledelayedexpansion
- <nul >f.bin (for /l %%i in (1 1 1859) do set /p "=%%i ")
- for %%f in (f.bin) do set "i=%%~zf" & echo File size: %%~zf bytes.
- for /l %%t in () do (
- set /a "i+=1" & set "s=!s!A" & echo,Length: !i!
- for /f "delims=" %%l in (f.bin) do for %%a in (%%l!s!) do <nul set /p "=%%a,"
- echo, & pause & cls
- )
复制代码
|