标题: [问题求助] 求助BAT或VBS两列数据按照样式输出新的txt文件 [打印本页]
作者: filippo009 时间: 2020-12-17 22:25 标题: 求助BAT或VBS两列数据按照样式输出新的txt文件
请问BAT 或VBS ,假设原有 txt 样式,希望能样式输出到新的txt 文件中,
yh001|读取错误
yh002|不能观看
yh003|无法识别
yh004|未知原因
yh005|未知原因
输出到一个新的txt,如下面样式
[MARK]
yh001=666 '=后面可以固定的
yh002=666
yh003=666
yh004=666
yh005=666
[COMMENT]
yh001=读取错误
yh002=不能观看
yh003=无法识别
yh004=未知原因
yh005=未知原因
[color]
yh001=66FFFF '=后面是固定的
yh002=66FFFF
yh003=66FFFF
yh004=66FFFF
yh005=66FFFF
作者: went 时间: 2020-12-17 22:55
bat
处理文件test.txt,生成文件test_new.txt- @echo off & cd /d "%~dp0"
- set "head=[MARK]"
- set "headVal=666"
- set "body=[COMMENT]"
- set "foot=[color]"
- set "footVal=66FFFF"
- set "file=test.txt"
- (
- echo %head%
- for /f "usebackq delims=|" %%i in ("%file%") do echo %%i=%headVal%
- echo.
- echo %body%
- for /f "usebackq tokens=1* delims=|" %%i in ("%file%") do echo %%i=%%j
- echo.
- echo %foot%
- for /f "usebackq delims=|" %%i in ("%file%") do echo %%i=%footVal%
- ) > "test_new.txt"
- pause&exit
复制代码
作者: filippo009 时间: 2020-12-18 12:34
回复 2# went
请教一个问题,如果是要输出这里第一列(%%i)的 前3或后3个 字符,这个要怎么 写呢。
作者: qixiaobin0715 时间: 2020-12-18 15:03
- @echo off
- setlocal enabledelayedexpansion
- set /a k=1000,m=2000,n=3000
- for /f "tokens=1* delims=|" %%a in (a.txt) do (
- if !k!==1000 set "#!k!=#[MARK]"&set "#!m!=#[COMMENT]"&set "#!n!=#[color]"
- set /a k+=1,m+=1,n+=1
- set "#!k!=#%%a=666"&set "#!m!=#%%a=%%b"&set "#!n!=#%%a=66FFFF"
- )
- set /a k+=1,m+=1,n+=1
- set "#!k!=#"&set "#!m!=#"&set "#!n!=#"
- (for /f "tokens=1* delims=#" %%i in ('set #') do echo,%%j)>#a.txt
- pause
复制代码
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |