【问题标题】:Retrieving variables from .txt error; Batch从 .txt 错误中检索变量;批
【发布时间】:2014-04-11 11:25:01
【问题描述】:
:LoadSelect1
set /p Name=Enter character to load:
cls
if EXIST "%Name%_Savefile.txt" goto Load
goto LoadError
:Load
for /f "tokens=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26" %%a in (%Name%_Savefile.txt) do call :Process %%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m %%n %%o %%p %%q %%r %%s %%t %%u %%v %%w %%x %%y %%z
goto Stats
:Process
set Location=%1
set Name=%2
set Gender=%3
set Age=%4
set Gold=%5
set Hunger=%6
set Illness=%7
set Wounds=%8
set CHP=%9
set MHP=%10
set CMP=%11
set MMP=%12
set DMG=%13
set DFN=%14
set INT=%15
set DEX=%16
set STR=%17
set Head=%18
set Shoulder=%19
set Neck=%20
set Chest=%21
set Glove=%22
set Leg=%23
set Feet=%24
set LTWP=%25
set RTWP=%26

以上代码用于检索在我的批处理脚本中保存到 .txt 文件中的变量。变量可以很好地保存到各个行。使用 Call :Process 函数时,%1 应用于 %1,“%1X”变为 %1 并附加编号。同时 %2-9 为空白,%2X 为带数字的空白。解决方案会很棒。

Pastebin of full code

重新创建:作为批处理文件运行。通过提示直到有 9 个选项的部分。键入“保存”。关闭并重新打开。转到加载选项。输入以前的名字。查看错误。

【问题讨论】:

    标签: variables batch-file save call token


    【解决方案1】:

    如果您以这种格式保存savefile.txt 会更容易:

    保存文件.txt

    Location=AAAA
    Name=BBBB
    Gender=CCCC
    Age=DDDD
    Gold=EEEE
    Hunger=FFFF
    Illness=GGGG
    Wounds=HHHH
    

    然后设置保存在savefile.txt中的变量:

    for /f "delims=" %%a in (savefile.txt) do set %%a
    

    您也可以将您的savefile 保存为.bat,然后它将如下所示:

    set Location=AAAA
    set Name=BBBB
    ----
    

    使用call:savefile.bat,您的所有变量都将被评估

    【讨论】:

    • 将尝试第二个选项。
    • 工作完美。希望我在之前的问题中得到了这个答案。谢谢!
    猜你喜欢
    • 2021-03-29
    • 1970-01-01
    • 2016-08-24
    • 2011-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-15
    • 1970-01-01
    相关资源
    最近更新 更多