Xsander1cage
05-11-2014, 19:02
Имеется такой код:
@echo off
Setlocal Enabledelayedexpansion Enableextensions
Set From=english
Set Into=russian
Set Filename=appmanifest_21010.acf
Set NewFileName=appmanifest_21010_new.acf
if exist "%NewFileName%" del "%NewFileName%"
for /F "UseBackQ delims= eol=" %%A in ("%filename%") do (
Set St=%%A
Set St=!ST:%From%=%Into%!
Echo !St!>>"%NewFileName%"
)
и файл со следующим содержимым
"AppState"
{
"appid" "21010"
"Universe" "1"
"name" "Watchmen: The End Is Nigh"
"StateFlags" "4"
"installdir" "Watchmen"
"LastUpdated" "1411209643"
"UpdateResult" "0"
"SizeOnDisk" "1704530390"
"buildid" "653"
"LastOwner" "76561198017586215"
"BytesToDownload" "1621825696"
"BytesDownloaded" "1621825696"
"AutoUpdateBehavior" "0"
"AllowOtherDownloadsWhileRunning" "0"
"UserConfig"
{
"language" "english"
}
"MountedDepots"
{
"21011" "2150582903752080439"
}
}
При выполнении скрипта слово успешно заменяется, но вместе с этим удаляется первая строка со словом "AppState". Если кавычки убрать, то все как нужно. Я так понимаю, они воспринимаются скриптом как спецсимвол. Как можно решить? Заранее благодарен.
@echo off
Setlocal Enabledelayedexpansion Enableextensions
Set From=english
Set Into=russian
Set Filename=appmanifest_21010.acf
Set NewFileName=appmanifest_21010_new.acf
if exist "%NewFileName%" del "%NewFileName%"
for /F "UseBackQ delims= eol=" %%A in ("%filename%") do (
Set St=%%A
Set St=!ST:%From%=%Into%!
Echo !St!>>"%NewFileName%"
)
и файл со следующим содержимым
"AppState"
{
"appid" "21010"
"Universe" "1"
"name" "Watchmen: The End Is Nigh"
"StateFlags" "4"
"installdir" "Watchmen"
"LastUpdated" "1411209643"
"UpdateResult" "0"
"SizeOnDisk" "1704530390"
"buildid" "653"
"LastOwner" "76561198017586215"
"BytesToDownload" "1621825696"
"BytesDownloaded" "1621825696"
"AutoUpdateBehavior" "0"
"AllowOtherDownloadsWhileRunning" "0"
"UserConfig"
{
"language" "english"
}
"MountedDepots"
{
"21011" "2150582903752080439"
}
}
При выполнении скрипта слово успешно заменяется, но вместе с этим удаляется первая строка со словом "AppState". Если кавычки убрать, то все как нужно. Я так понимаю, они воспринимаются скриптом как спецсимвол. Как можно решить? Заранее благодарен.