csv文件中关于null byte的处理

来源:互联网 发布:淘宝怎么批量添加水印 编辑:程序博客网 时间:2024/05/22 02:02

csv 文件中 null byte

在生成csv2标准的csv文件时,默认的分割符是英文中的“ , ”或者指定的其它单个(无法多个)分隔符,那么当csv文件中的某个字段包含分隔符时,该字段的两边都会用一个null byte加以区别改字段。
在上述情况下csv文件处理会报 contains null byte errror,解决方式是,自己写一个分割处理函数,单独读出每一行的每一个字段。
利用codecs函数:

对分隔符是,的csv文件,只取出可能包含分隔符的字段

代码块语法遵循标准markdown代码,例如:

import codecswith codecs.open('formohtml.txt', "rb") as f:    i = 0    for line in f.readlines():        i += 1        print line        pos = line.find('\x00')     # null byte定位        sub1 = ''        sub2 = ''        if pos != -1:               # null byte 不存在            sub1 = line[:pos-1]            print sub1            houxu = line[pos:]            houxu = houxu.replace('\x00','')            sub2 = houxu[:len(houxu)-1]            print sub2        else:                       # null byte 存在            posComma = line.find(',')            sub1 = line[:posComma]            sub3 = line[posComma+1:]            sub2 = sub3[:len(sub3)-1]

————————-end line——————————-

原创粉丝点击