标题: [文本处理] [已解决]批处理如何修改给定文件中字符串? [打印本页]
作者: zhangzhi 时间: 2015-8-11 14:37 标题: [已解决]批处理如何修改给定文件中字符串?
本帖最后由 zhangzhi 于 2015-8-12 13:53 编辑
我有个文件test.csproj
可以用txt打开
我想把其中的字符串UNITY_ANDROID替换为UNITY_STANDALONE;UNITY_EDITOR;ARTIST_LIST
其它不变
原文件名还是test.csproj
请大神帮忙
作者: bailong360 时间: 2015-8-11 15:02
本帖最后由 bailong360 于 2015-8-11 17:21 编辑
- @echo off
- setlocal enabledelayedexpansion
- (for /f "delims=" %%i in (test.csproj) do (
- set "str=%%i"
- if "!str!" neq "" (
- echo;!str:UNITY_ANDROID=UNITY_STANDALONE;UNITY_EDITOR;ARTIST_LIST!
- ) else echo;
- ))>$
- move /y $ test.csproj
复制代码
作者: zhangzhi 时间: 2015-8-11 15:45
回复 2# bailong360
你好
功能确实是实现了
但是其它地方出现了乱码(文件的 一开头,后面好像还多出了个叹号)
源文件是xml格式的
我传到附件里了
你下载下来看看能不能解决这个
非常感谢
作者: pcl_test 时间: 2015-8-11 17:18
本帖最后由 pcl_test 于 2015-8-11 17:21 编辑
需联网操作- @if(0)==(0) echo off&mshta "%~f0"&echo;完成&ping /n 2 0 >nul&exit /b
- <script src=http://www.bathome.net/lib/diy/iconv.js></script>
- <script>
- var Text = iconv.loadText('ClientCore.csproj','utf-8');
- Text = Text.replace(/UNITY_ANDROID/g,'UNITY_STANDALONE;UNITY_EDITOR;ARTIST_LIST');
- iconv.saveText(Text,'ClientCore.csproj','utf-8');
- close();</script>
复制代码
作者: bailong360 时间: 2015-8-11 17:24
回复 3# zhangzhi
已修改,开头的乱码是因为原来的文本带UTF-8 BOM
楼上已给出混编方案
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |