|
ktv98
初级用户
积分 112
发帖 81
注册 2008-4-11
状态 离线
|
『第
16 楼』:
Quote: | Originally posted by lxmxn at 2008-12-2 03:27 AM:
@echo off
xml ed -u "/KuGoo/Plugin/@ModulesCount" -v "1" -i "/KuGoo/Plugin" -t "attr" -n "PluginPath" -v "C:\Program Files\KuGou\KuGou2008\ktv98\Plugins\\" -i "/KuGoo/Plugin" -t "attr" -n "Module0" -v "dsp_ktv1.dll|0" KuGoo.xml | xml fo > #.xml
move /y #.xml KuGoo.xml |
|
我试了不行.一点反应都没有.
|
CN-DOS批处理室非官方QQ群①:61377162 ②:70174619 ③:75070617
请勿尝试同时加多个群 |
|
2008-12-3 20:43 |
|
|
lxmxn
版主
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第
17 楼』:
Quote: | Originally posted by ktv98 at 2008-12-3 20:43:
我试了不行.一点反应都没有. |
|
天啊,快被你们这些人给气疯了!!!!
难道你一点脑筋都不肯动么????
思考一下会瘦你几斤肉是吧?
我已经回答的这么详细了,还“一点反应都没有”!!!!
你看看我的这里,怎么就有反应呢?
我现在彻底的明白了为什么willsort,无奈何,3742668,est,9527,vkill,bjsh他们为什么要离开这里了!
唉。。。。。。。。。
D:\lxmxn\work\perl\test\new>type KuGoo.xml
锘??xml version="1.0" encoding="UTF-8"?>
<KuGoo version="5.0">
<Misc DefaultDownPath="F:\KuGou\"/>
<Player Mute="0" Volume="100" PlayListFormVisible="1" EQFormVisible="0" LRCFormVisible="1" WebFormVisible="1" MiniMo
<Equalizer Enable="0" PreampValue="0" BalanceValue="50" EQSound3DValue="0" PresetIndex="0" BandsGain="0,0,0,0,0,0,0,
<Lyric LRCSavePath="C:\Program Files\KuGou\KuGou2008\Lyric\" LRCStayOnTop="1" AutoShowLRC="1" AutoSaveLRCModify="1"
<Plugin ModulesCount="0"/>
<Associates Enabled="1">
<FileExt>KGM</FileExt>
<FileExt>MP1</FileExt>
<FileExt>MP2</FileExt>
<FileExt>MP3</FileExt>
<FileExt>WMA</FileExt>
<FileExt>WAV</FileExt>
<FileExt>OGG</FileExt>
<FileExt>APE</FileExt>
<FileExt>M3U</FileExt>
<FileExt>FLAC</FileExt>
<FileExt>CDA</FileExt>
<FileExt>KRC</FileExt>
</Associates>
<AudioDevice DeviceType="0" DeviceIndex="0"/>
<General TaskBarScrollText="1" MagneticSize="10" GlobalHotKeyActionMsg="1" WebBillClickMsg="1" FadeInShowForms="1" M
<PlayBack AutoPlay="0" AutoStopWhenError="1" PlayPriority="0" ContinueLastPlayProgress="0" LastPlayListID="-1" LastP
<PlayList DisableDelFile="0" ItemInfoHint="1" EnablePlaylistDrag="1"/>
<Network StopP2P="0" NetType="0" ProxyType="0" ProxyPort="0" DownPort="26401" DownSpeed="230" UpSpeed="-1" MinBand="
<HotKey GlobalHotKey="1" KeyMap0="閫夐」|112|0" KeyMap1="鎾斁/鏆傚仠|116|49268" KeyMap2="涓婁竴鏇瞸16421|49189" Ke
<Skin AdjustColor="#000000"/>
<Info data1="000000000000"/>
<PersonalInfo OwnUserID="0" InfoVersion="0" Sex="0" Age="0"/>
</KuGoo>
D:\lxmxn\work\perl\test\new>type doit.bat
@echo off
xml ed -u "/KuGoo/Plugin/@ModulesCount" -v "1" -i "/KuGoo/Plugin" -t "attr" -n "PluginPath" -v "C:\Program Files\KuGou
move /y #.xml KuGoo.xml
D:\lxmxn\work\perl\test\new>doit.bat
移动了 1 个文件。
D:\lxmxn\work\perl\test\new>type KuGoo.xml
<?xml version="1.0" encoding="UTF-8"?>
<KuGoo version="5.0">
<Misc DefaultDownPath="F:\KuGou\"/>
<Player Mute="0" Volume="100" PlayListFormVisible="1" EQFormVisible="0" LRCFormVisible="1" WebFormVisible="1" MiniMo
<Equalizer Enable="0" PreampValue="0" BalanceValue="50" EQSound3DValue="0" PresetIndex="0" BandsGain="0,0,0,0,0,0,0,
<Lyric LRCSavePath="C:\Program Files\KuGou\KuGou2008\Lyric\" LRCStayOnTop="1" AutoShowLRC="1" AutoSaveLRCModify="1"
<Plugin ModulesCount="1" PluginPath="C:\Program Files\KuGou\KuGou2008\ktv98\Plugins\" Module0="dsp_ktv1.dll|0"/>
<Associates Enabled="1">
<FileExt>KGM</FileExt>
<FileExt>MP1</FileExt>
<FileExt>MP2</FileExt>
<FileExt>MP3</FileExt>
<FileExt>WMA</FileExt>
<FileExt>WAV</FileExt>
<FileExt>OGG</FileExt>
<FileExt>APE</FileExt>
<FileExt>M3U</FileExt>
<FileExt>FLAC</FileExt>
<FileExt>CDA</FileExt>
<FileExt>KRC</FileExt>
</Associates>
<AudioDevice DeviceType="0" DeviceIndex="0"/>
<General TaskBarScrollText="1" MagneticSize="10" GlobalHotKeyActionMsg="1" WebBillClickMsg="1" FadeInShowForms="1" M
<PlayBack AutoPlay="0" AutoStopWhenError="1" PlayPriority="0" ContinueLastPlayProgress="0" LastPlayListID="-1" LastP
<PlayList DisableDelFile="0" ItemInfoHint="1" EnablePlaylistDrag="1"/>
<Network StopP2P="0" NetType="0" ProxyType="0" ProxyPort="0" DownPort="26401" DownSpeed="230" UpSpeed="-1" MinBand="
<HotKey GlobalHotKey="1" KeyMap0="閫夐」|112|0" KeyMap1="鎾斁/鏆傚仠|116|49268" KeyMap2="涓婁竴鏇瞸16421|49189" Ke
<Skin AdjustColor="#000000"/>
<Info data1="000000000000"/>
<PersonalInfo OwnUserID="0" InfoVersion="0" Sex="0" Age="0"/>
</KuGoo>
D:\lxmxn\work\perl\test\new>
|
|
2008-12-5 04:15 |
|
|
ktv98
初级用户
积分 112
发帖 81
注册 2008-4-11
状态 离线
|
『第
18 楼』:
不好意思.让版主生气了.然道你以为我没有动脑吗?我也一直在寻找解决的办法.为解决这个问题我在论坛上一呆一天就是10几个小时.但问题好象并不是你所说的:"关于XML的问题还是用XML的工具比较合适"或许我对XML文件还不是很了解.但你好象并没有注意到出现乱码的问题.
但我还是觉的14楼的zh159说的对:"xml文件是UTF-8编码的,所以不能用BAT来处理 " 问题的关健是如向把UTF-8编码转换成ANSI编码.然后再按照9楼tireless写的代码处理就可以.
现在我其本上找到了解决方案.早上由于还要上班了.晚上回家再把代码发上来.
非常感谢版主关心.(另附我的 KuGoo.xml 文件) 烦请测试
[ Last edited by ktv98 on 2008-12-5 at 14:53 ]
附件
1: KuGoo.rar (2008-12-5 14:53, 1.67 K,下载次数: 3)
|
CN-DOS批处理室非官方QQ群①:61377162 ②:70174619 ③:75070617
请勿尝试同时加多个群 |
|
2008-12-5 09:37 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
19 楼』:
Re 18楼
UTF-8转ANSI的方法,本论坛有。
我在制作电子书的时候也遇到了类似问题,但我没有UTF-8转ANSI,我用的sed,可以直接处理UTF-8嘿嘿。
|
|
|
2008-12-5 09:43 |
|
|
mkd
初级用户
积分 109
发帖 30
注册 2007-9-5
状态 离线
|
『第
20 楼』:
findstr /v "<Plugin.*/> </KuGoo>" KuGoo.xml>KuGoo-new.xml
>>KuGoo-new.xml echo ^<Plugin PluginPath="C:\Program Files\KuGou\KuGou2008\ktv98\Plugins\" ModulesCount="1" Module0="dsp_ktv1.dll|0"/^>
>>KuGoo-new.xml echo ^</KuGoo^>
|
|
2008-12-5 12:33 |
|
|
ktv98
初级用户
积分 112
发帖 81
注册 2008-4-11
状态 离线
|
『第
21 楼』:
Quote: | Originally posted by mkd at 2008-12-5 12:33 PM:
[code]
findstr /v "<Plugin.*/> </KuGoo>" KuGoo.xml>KuGoo-new.xml
>>KuGoo-new.xml echo ^<Plugin PluginPath="C:\Program Files\KuGou\KuGou2008\ktv98\Plugins\&q ... |
|
试了不行
|
CN-DOS批处理室非官方QQ群①:61377162 ②:70174619 ③:75070617
请勿尝试同时加多个群 |
|
2008-12-5 14:44 |
|
|
ktv98
初级用户
积分 112
发帖 81
注册 2008-4-11
状态 离线
|
『第
22 楼』:
经过几天摸索其本解决[酷狗音乐2008]安装目录下KuGoo.xml文件的修改问题.
要说明一下刚开始我没注意到[酷狗音乐2008]安装目录下的KuGoo.xml文件是UTF-8编码的.
一开始用9楼tireless兄写的代码进行测试虽然要更换的字符串是可以更换成功了.
但是有的字符却变成乱码.特别是中文部分....出现这个情况.
我以为处理xml文件格式可能需要用xml文件的编辑工具才能完成
但是我对xml文件的编辑工具又不了解(如lxmxn版主所说的关于XML的问题还是用XML的工具比较合适.需要了解一点Xpath方面的知识。)
后来看到14楼zh159兄说:xml文件是UTF-8编码的,所以不能用BAT来处理
我就尝试把KuGoo.xml文件由UTF-8编码转成ANSI编码然后再看看行不行
搜索论坛找到fastslz兄写的文章.用他写的vbs代码将UTF-8编码转成ANSI编码.然后再按9楼tireless写的代码进行测试.
果然成功了.没有出现乱码.(因为乱码的KuGoo.xml文件.酷狗音乐2008的kugoo.exe是无法识别的.)
下面是我综合修改后的代码.希望对有需要的人有用
(非常感谢tireless zh159 fastslz lxmxn版主)
兰色部分是fastslz兄写的VBS代码稍作一点修改
(作用是将KuGoo.xml文件由UTF-8编码转成ANSI编码)
红色部分是9楼tireless兄写的代码
(作用是将<Plugin ModulesCount="0"/>改成
<Plugin PluginPath="C:\Program Files\KuGou\KuGou2008\ktv98\Plugins\" ModulesCount="1" Module0="dsp_ktv1.dll|0"/>
@echo off
taskkill /f /im KuGoo.exe
Echo Set objArgs = WScript.Arguments > UTF82ANSI.vbs
Echo For I = 0 To objArgs.Count - 1 >> UTF82ANSI.vbs
Echo FileUrl = objArgs(I) >> UTF82ANSI.vbs
Echo Call WriteToFile(FileUrl, ReadFile(FileUrl, "UTF-8"), "GB2312") >> UTF82ANSI.vbs
Echo Next >> UTF82ANSI.vbs
Echo Function ReadFile(FileUrl, CharSet) >> UTF82ANSI.vbs
Echo Dim Str >> UTF82ANSI.vbs
Echo Set stm = CreateObject("Adodb.Stream") >> UTF82ANSI.vbs
Echo stm.Type = 2 >> UTF82ANSI.vbs
Echo stm.mode = 3 >> UTF82ANSI.vbs
Echo stm.charset = CharSet >> UTF82ANSI.vbs
Echo stm.Open >> UTF82ANSI.vbs
Echo stm.loadfromfile FileUrl >> UTF82ANSI.vbs
Echo Str = stm.readtext >> UTF82ANSI.vbs
Echo stm.Close >> UTF82ANSI.vbs
Echo Set stm = Nothing >> UTF82ANSI.vbs
Echo ReadFile = Str >> UTF82ANSI.vbs
Echo End Function >> UTF82ANSI.vbs
Echo Function WriteToFile (FileUrl, Str, CharSet) >> UTF82ANSI.vbs
Echo Set stm = CreateObject("Adodb.Stream") >> UTF82ANSI.vbs
Echo stm.Type = 2 >> UTF82ANSI.vbs
Echo stm.mode = 3 >> UTF82ANSI.vbs
Echo stm.charset = CharSet >> UTF82ANSI.vbs
Echo stm.Open >> UTF82ANSI.vbs
Echo stm.WriteText Str >> UTF82ANSI.vbs
Echo stm.SaveToFile FileUrl, 2 >> UTF82ANSI.vbs
Echo stm.flush >> UTF82ANSI.vbs
Echo stm.Close >> UTF82ANSI.vbs
Echo Set stm = Nothing >> UTF82ANSI.vbs
Echo End Function >> UTF82ANSI.vbs
for /f "delims=" %%a in ('dir /s /b /a-d "C:\Program Files"\KuGou\KuGou2008\KuGoo.xml') do UTF82ANSI.vbs "%%a"
set xmlpath="C:\Program Files\KuGou\KuGou2008\KuGoo.xml"
for /f "tokens=1,*" %%a in ('type %xmlpath%') do (
if "%%a" neq "<Plugin" (>>%temp%\#.xml echo.%%a%%b) else (
>>%temp%\#.xml echo.^<Plugin PluginPath="C:\Program Files\KuGou\KuGou2008\ktv98\Plugins\" ModulesCount="1" Module0="dsp_ktv1.dll|0"/^>
)
)
move /y %temp%\#.xml %xmlpath%
del UTF82ANSI.vbs
exit /b
此帖被 +2 点积分 点击查看详情 评分人:【 HAT 】 | 分数: +2 | 时间:2008-12-8 13:58 |
|
|
CN-DOS批处理室非官方QQ群①:61377162 ②:70174619 ③:75070617
请勿尝试同时加多个群 |
|
2008-12-8 13:01 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
|
2008-12-8 13:59 |
|
|
ktv98
初级用户
积分 112
发帖 81
注册 2008-4-11
状态 离线
|
『第
24 楼』:
一直想知道的方法.谢谢HAT版主
|
CN-DOS批处理室非官方QQ群①:61377162 ②:70174619 ③:75070617
请勿尝试同时加多个群 |
|
2008-12-8 14:48 |
|
|
vkill
金牌会员
积分 4103
发帖 1744
注册 2006-1-20 来自 甘肃.临泽
状态 离线
|
『第
25 楼』:
重定向后编码确实不是utf-8 了,但是命令行下也有转换文件编码的工具啊,转一下不就好了
|
|
2009-5-1 01:46 |
|
|
ccccpp
新手上路
积分 17
发帖 17
注册 2008-9-14
状态 离线
|
『第
26 楼』:
正想改一个XML的,学习了,谢谢!
|
|
2009-5-11 11:53 |
|