标题: [文本处理] 批处理如何实现在不改变txt文本原编码的情况下在首尾添加内容? [打印本页]
作者: iseeyou 时间: 2016-4-26 17:50 标题: 批处理如何实现在不改变txt文本原编码的情况下在首尾添加内容?
本帖最后由 pcl_test 于 2016-4-26 19:49 编辑
utf-8的txt被处理后变成了gb2312了,如何保持原文本格式呢?- @echo off
- for /r %%a in (*.txt) do (
- (echo ----------------------------------------------------------
- echo ^开始字串符
- echo ----------------------------------------------------------
- echo.
- type "%%a"
- echo.
- echo.
- echo ----------------------------------------------------------
- echo 结束字串符
- echo ----------------------------------------------------------)>$
-
- move /y $ "%%a"
- )
复制代码
作者: happy886rr 时间: 2016-4-26 21:13
混编吧,单纯批处理很难对付utf-8。
作者: Nsqs 时间: 2016-4-26 21:17
回复 1# iseeyou
把bat文件以ansi格式保存生成的文件也会是ansi
作者: codegay 时间: 2016-4-27 06:55
二进制的方式修改好像不涉及到编码问题。
作者: codegay 时间: 2016-4-27 07:33
处理ANSI文件,中文会乱码,因为python3字符串都是unicode编码
以下代码可以正常处理UTF-8编码的文件。- """
- python3
- 2016年4月27日 07:27:01 codegay
- """
-
- import glob
- head=(
- """----------------------------------------------------------
- 开始字串符
- ----------------------------------------------------------
-
- """).encode()
-
- til=("""
-
- ----------------------------------------------------------
- 结束字串符
- ----------------------------------------------------------
- """).encode()
-
- for r in glob.glob("*mac.txt"):
- with open(r,"rb+") as f:
- txt=head+f.read()+til
- f.seek(0)
- f.write(txt)
复制代码
作者: iseeyou 时间: 2016-4-30 21:22
回复 5# codegay
gb2312的无法处理,添加的字符乱码?可以改成gb2312也可以用的吗?
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |