使用Python按字节分割字符串
处理过程大致是:从文件中按行读取数据,对每一行数据按给定的字节(fieldlength)插入分隔符再以UTF-8保存到新的文件。我试过分别以二进制和文本模式打开源文件再进...
处理过程大致是:从文件中按行读取数据,对每一行数据按给定的字节(field length)插入分隔符再以UTF-8保存到新的文件。我试过分别以二进制和文本模式打开源文件再进行处理,但都比较繁琐并且失败,原因是多样化的。各位是否有更灵活简单的方法。感激不尽。
展开
1个回答
展开全部
按行读取之后按原文件编码类型解码,插入完后按UTF-8解码写入文件
以源文件为gbk为例,假设每5字符插入|
python2
with open('target','w') as f:
for line open('source').readlines():
line=line.decode('gbk')
line='|'.join([line[i:min(i+5,len(line))] for i in range(0,len(line),5)])
f.write(line.encode('utf-8'))
python3
with open('target','w',encoding='utf-8') as f:
for line open('source',encoding='gbk').readlines():
line=line
line='|'.join([line[i:min(i+5,len(line))] for i in range(0,len(line),5)])
f.write(line)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询