您的位置:首页 > 其它

utf-8编码下替换指定文本内容源码

2017-09-21 12:43 260 查看
背景:帮群里一哥们儿写的。

bug:
1.起初被编码问题搞得晕头转向,后面看到那家伙用的for循环来输出,完美解决了输出的编码问题。
2.chcp 65001修改代码页解决了bat下对utf-8编码出现乱码的bug。

核心命令:还是靠智能的if判断,一步解决核心问题。

源码如下:

@echo off
del new.csproj
chcp 65001>nul
title utf-8编码下替换指定文本内容
for /f "delims=" %%a in (Unity3DPerfAnalyzerSDK.Plugins.csproj) do (
if "%%a"=="    <AssemblyName>Assembly-CSharp-firstpass</AssemblyName>" (
echo     ^<AssemblyName^>Unity3DPerfAnalyzer^</AssemblyName^>>>new.csproj
) else (
echo %%a>>new.csproj
)
)
set /p=success.


运行结果:运行后输出到bat目录下的new.csproj中,经过文本比对,无任何bug替换指定内容成功。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  BAT 源码 脚本 utf-8 编码