标题: [文本处理] 批处理如何在不改变原文本编码格式的情况下对文本进行修改? [打印本页]
作者: 8274350 时间: 2014-7-9 13:17 标题: 批处理如何在不改变原文本编码格式的情况下对文本进行修改?
本帖最后由 pcl_test 于 2016-7-17 10:41 编辑
- @echo off
- setlocal enabledelayedexpansion
- rem 以下一行等号右边换成你的目标文件夹。
- set docu=H:\login
- chcp %utf8%
- for /f "delims=" %%a in ('dir /s /b "%docu%\*.jsp"') do (
- for /f "usebackq delims=" %%b in ("%%a") do (
- set var=%%b
- echo !var:.js"=.jsgz"! >>"%temp%\temp.jsp"
- )
- move /y "%temp%\temp.jsp" "%%a"
- )
- pause
复制代码
作者: 8274350 时间: 2014-7-9 13:18
沙发自己拿。。。。大家帮帮忙哈!!!顶
作者: 8274350 时间: 2014-7-9 13:23
板凳自己拿 大神呢
作者: DAIC 时间: 2014-7-9 13:28
bat文件是什么编码格式?
jsp文件是什么编码格式?
作者: DAIC 时间: 2014-7-9 13:29
%utf8% 这个变量是在什么地方定义的?
chcp %utf8% 这样操作的目的是什么?
作者: 8274350 时间: 2014-7-9 13:58
@echo off
setlocal enabledelayedexpansion
rem 以下一行等号右边换成你的目标文件夹。
set docu=H:\login
for /f "delims=" %%a in ('dir /s /b "%docu%\*.jsp"') do (
for /f "usebackq delims=" %%b in ("%%a") do (
set var=%%b
echo !var:.js"=.jsgz"! >>"%temp%\temp.jsp"
)
move /y "%temp%\temp.jsp" "%%a"
)
pause
是这个,没有chcp %utf8%这一段
jsp文件就是java的web文件,相当于HTML文件
作者: 8274350 时间: 2014-7-9 14:01
现在就是,怎么把jsp编码格式是 utf-8的
替换内容输出后,怎么还是原来的格式
BAT文件里面生成文件或者用>输出文件时何指定编码格式现默认ANSI生成完文件里面文乱码现
需要输出时编码UTF-8
作者: DAIC 时间: 2014-7-9 15:09
回复 7# 8274350
BAT无法直接处理UTF-8格式的文件
作者: storm8 时间: 2014-7-9 15:38
楼主,用sed、gawk这些三方工具吧
作者: CrLf 时间: 2014-7-9 15:40
powershell:- Out-File -encoding 'utf8' -inputobject ((type a.txt) -replace 'a','') '你的文件.txt'
复制代码
作者: CrLf 时间: 2014-7-9 15:41
回复 9# storm8
如果没有 65535 代码页支持,sed 也无法直接处理 utf-8
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |