python写入csv文件中文乱码解决方案

今天修改程序,需要写入csv文件,发现中文会乱码,后来查了下,可以设置文件写入属性后,就可以解决:

import csv
import codecs
list=[‘a101‘,‘b101‘]
sumlist=[]
for str in list:
templist=[]
templist.append(‘a‘)
templist.append(‘b‘)
templist.append(‘c‘)
sumlist.append(templist)
csvfile = file(‘csv_test.csv‘, ‘wb‘)
csvfile.write(codecs.BOM_UTF8)
writer = csv.writer(csvfile)
writer.writerow([‘姓名‘, ‘年龄‘, ‘电话‘])

#data = [
# (‘小河‘, ‘25‘, ‘1234567‘),
# (‘小芳‘, ‘18‘, ‘789456‘)
#]
writer.writerows(sumlist)

csvfile.close()

最为关键的一句就是:csvfile.write(codecs.BOM_UTF8),有了这一句,中文就能正常写入

时间: 2024-07-28 19:58:44

python写入csv文件中文乱码解决方案的相关文章

python读写csv时中文乱码问题解决办法

参考1 参考2 CSV是英文Comma Separate Values(逗号分隔值)的缩写,顾名思义,文档的内容是由 "," 分隔的一列列的数据构成的,可以使用excel和文本编辑器等打开.CSV文档是一种编辑方便,可视化效果极佳的数据存储方式 1.python读写.追加csv方法: 'r':只读(缺省.如果文件不存在,则抛出错误) 'w':只写(如果文件不存在,则自动创建文件) 'a':附加到文件末尾(如果文件不存在,则自动创建文件) 'r+':读写(如果文件不存在,则抛出错误) 1

python写入csv文件的几种方法总结

最常用的一种方法,利用pandas包 import pandas as pd #任意的多组列表 a = [1,2,3] b = [4,5,6] #字典中的key值即为csv中列名 dataframe = pd.DataFrame({'a_name':a,'b_name':b}) #将DataFrame存储为csv,index表示是否显示行名,default=True dataframe.to_csv("test.csv",index=False,sep=',') 1 2 3 4 5 6

python 写入csv文件

import csv fieldnames = ['Column1', 'Column2', 'Column3', 'Column4'] rows = [{'Column1': '0', 'Column2': '1', 'Column3': '2', 'Column4': '3'}, {'Column1': '0', 'Column2': '1', 'Column3': '2', 'Column4': '3'}, {'Column1': '0', 'Column2': '1', 'Column3

python写入csv文件多一行

如执行下面的代码: 1 import csv 2 3 if __name__ == "__main__": 4 5 content1 = ['hello'] 6 content2 = ['world'] 7 8 with open('test.csv', 'w') as f: 9 writer = csv.writer(f) 10 writer.writerow(content1) 11 writer.writerow(content2) 打开test.csv文件查看,如下图: 可以看

c# winForm使用Aspose.Cells读取CSV文件中文乱码问题

不废话直接上代码 主要注意是 红色代码部分 Aspose.Cells.TxtLoadOptions lo = new TxtLoadOptions();                      lo.Encoding = Encoding.Default;            //创建一个Workbook和Worksheet对象            Worksheet wkSheet = null;            Workbook wkBook = new Workbook(str

python读csv文件中文汉字出现UnicodeDecodeError

出错代码:data = pd.read_csv(fname); 原因:byte 0xcb不能被解码成utf-8编码: 解决方法:指定使用gbk编码 data = pd.read_csv(fname, encoding='gbk'); 原文地址:https://www.cnblogs.com/HITSZ/p/8688616.html

python读取和写入csv文件

----------------python读取csv文件------------------ #导入csv 创建一个csv文件,输入内容 import csv #1.找到需要被打开的文件路径,通过open打开文件,声明打开的方式,声明编码格式 csv_file=open(r'csv文件路径', mode='r', encoding='utf-8') #2.通过csv模组提供的读取方法来读取打开的文件 csv_data=csv.reader(csv_file) #3.通过for循环遍历读取数据存

Java底层代码实现单文件读取和写入(解决中文乱码问题)

需求: 将"E:/data/车站一次/阿坝藏族羌族自治州.csv"文件中的内容读取,写入到"E:/data//车站一次.csv". 代码: public class FileOpe { public static void main(String[] args) { sigle(); } public static void sigle(){ BufferedReader bufr = null; BufferedWriter bufw = null; try {

python读取并写入csv文件

新建csvData.csv文件 1 import csv 2 3 # 读取csv文件方式1 4 csvFile = open("csvData.csv", "r") 5 reader = csv.reader(csvFile) # 返回的是迭代类型 6 data = [] 7 for item in reader: 8 print(item) 9 data.append(item) 10 11 print(data) 12 csvFile.close() 13 14