为了在call调用后返回结果给变量,采用了写文件的方式模拟高级语言函数返回值,但执行效率很低,请问有没有好点的实现方法?
代码如下:
@echo off&setlocal enabledelayedexpansion
color a
for /l %%i in (539,1,600) do (
for /l %%j in (1,1,12) do (
call :read XXXX.TXT %%i %%j 临时
set /p 变量=<%tmp%\临时.tmp
echo !变量!
)
)
pause > nul & exit /b
::读取指定行、列的内容
:read
@echo off&setlocal enabledelayedexpansion
set line=%2
set /a line-=1
for /f "skip=%line% tokens=%3" %%a in (%~1) do (
echo %%a > %tmp%\%4.tmp
goto :eof
)
[ Last edited by hugreen on 2009-4-6 at 20:37 ]
代码如下:
@echo off&setlocal enabledelayedexpansion
color a
for /l %%i in (539,1,600) do (
for /l %%j in (1,1,12) do (
call :read XXXX.TXT %%i %%j 临时
set /p 变量=<%tmp%\临时.tmp
echo !变量!
)
)
pause > nul & exit /b
::读取指定行、列的内容
:read
@echo off&setlocal enabledelayedexpansion
set line=%2
set /a line-=1
for /f "skip=%line% tokens=%3" %%a in (%~1) do (
echo %%a > %tmp%\%4.tmp
goto :eof
)
[ Last edited by hugreen on 2009-4-6 at 20:37 ]
