找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 19211|回复: 2

[文件操作] [已解决]如何用bat读取配置文件(格式不同)

[复制链接]
发表于 2022-9-6 09:57:04 | 显示全部楼层 |阅读模式
本帖最后由 ANSL 于 2022-9-6 14:08 编辑

格式:
源文件:111.ini
;注释不算,但是会有,不用读取
1,2=3,1
2,3=1,2
3,3=1,1
.........
大致意思是:角色人物在x1,y2时敌方角色就移动到3,1
在=号前面的数字赋值为x变量","后面的数字赋值为y变量
在=号后面的数字赋值为x1变量","后面的数字赋值为y1变量
发表于 2022-9-6 12:27:24 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. cd /d "%~dp0"
  4. for /f "eol=;tokens=1-4 delims==," %%A in (config.ini) do (
  5.   set x=%%A
  6.   set y=%%B
  7.   set x1=%%C
  8.   set y1=%%D
  9.   echo !x!,!y!,!x1!,!y1!
  10. )
  11. endlocal
  12. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
ANSL + 1 解答热心,详细

查看全部评分

发表于 2022-9-6 12:38:40 | 显示全部楼层
  1. @ECHO OFF & PUSHD %~DP0

  2. setlocal EnableDelayedExpansion
  3. SET "inifile=111.ini"

  4. FOR /F "usebackq eol=; tokens=1-2 delims==" %%a in ("%inifile%") do (
  5.         FOR /F "tokens=1-2 delims=," %%x in ("%%a") do SET "x=%%x"&SET "y=%%y"
  6.         FOR /F "tokens=1-2 delims=," %%x in ("%%b") do SET "x1=%%x"&SET "y1=%%y"
  7.         ECHO.do something with x,y,x1,y1:!x!,!y!,!x1!,!y1!
  8. )
  9. pause
  10. exit /B
复制代码
SET "inifile=111.ini"这部分自己改吧,可以改成从参数%1传入

评分

参与人数 1技术 +1 收起 理由
ANSL + 1 感谢!

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 15:52 , Processed in 0.019734 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表