要将带有感叹号的文本表加载到全局数组中,可以使用批处理文件中的FOR命令和SET命令来实现。
以下是一个示例批处理文件的代码:
@echo off
setlocal enabledelayedexpansion
REM 定义全局数组
set "array[0]="
set "array[1]="
set "array[2]="
REM 读取文本文件并加载到数组中
set "file=path\to\your\file.txt"
set "index=0"
for /f "usebackq delims=" %%a in ("%file%") do (
set "line=%%a"
set "line=!line:!=^!"
set "array[!index!]=!line!"
set /a "index+=1"
)
REM 打印数组内容
for /l %%i in (0,1,%index%) do (
echo !array[%%i]!
)
endlocal
请注意,上述代码中的"file=path\to\your\file.txt"需要替换为实际的文件路径。
代码解释:
setlocal enabledelayedexpansion
命令启用了延迟变量扩展,这样在FOR循环中可以使用!
来访问变量的值。set "array[0]="
定义了一个名为array
的全局数组,并初始化了数组的元素。for /f "usebackq delims=" %%a in ("%file%") do
命令用于逐行读取文本文件的内容。set "line=%%a"
将当前行的内容存储在变量line
中。set "line=!line:!=^!"
将感叹号替换为^!
,这是因为感叹号在批处理文件中具有特殊含义,需要进行转义。set "array[!index!]=!line!"
将处理后的行内容存储在数组的对应元素中。set /a "index+=1"
递增索引变量,用于指示数组的下一个元素。这样,就可以将带有感叹号的文本表加载到全局数组中,并在批处理文件中进行后续处理。
领取专属 10元无门槛券
手把手带您无忧上云