Python 3:将CSV文件以UTF-8格式写入StringIO缓冲区。
Python 3: Write CSV file to StringIO buffer in UTF-8 format.
以下代码以 UTF-8 格式写入 CSV 文件。 csv 文件存储在文件系统中。
with open('sample.csv', 'w', newline='', encoding='utf-8') as csvfile:
spamwriter = csv.writer(csvfile, delimiter=' ',
quotechar='|', quoting=csv.QUOTE_MINIMAL)
csvfile.write('\ufeff')
spamwriter.writerow("嗨")
现在我不想再写文件系统了,我只想将 CVS 存储到一个 StringIO 缓冲区中。我应该怎么做?
为什么不直接写台词?
import io
s = io.StringIO()
with open('sample.csv') as file:
for line in file:
s.write(line)
s.seek(0)
for line in s:
print(line)
import csv
import os
filename = "temp.csv"
with open(filename, 'w', encoding='utf-8') as fp:
fp.write('\ufeff')
csv_writer = csv.writer(fp, quoting=csv.QUOTE_MINIMAL)
csv_writer.writerow(['嗨', '="00000011"', 'Lovely Spam', 'Wonderful Spam'])
buffer = open(filename, 'r').read()
print (buffer)
os.unlink(filename)
f= open("final.csv", "w")
f.write(buffer)
f.close()
以下代码以 UTF-8 格式写入 CSV 文件。 csv 文件存储在文件系统中。
with open('sample.csv', 'w', newline='', encoding='utf-8') as csvfile:
spamwriter = csv.writer(csvfile, delimiter=' ',
quotechar='|', quoting=csv.QUOTE_MINIMAL)
csvfile.write('\ufeff')
spamwriter.writerow("嗨")
现在我不想再写文件系统了,我只想将 CVS 存储到一个 StringIO 缓冲区中。我应该怎么做?
为什么不直接写台词?
import io
s = io.StringIO()
with open('sample.csv') as file:
for line in file:
s.write(line)
s.seek(0)
for line in s:
print(line)
import csv
import os
filename = "temp.csv"
with open(filename, 'w', encoding='utf-8') as fp:
fp.write('\ufeff')
csv_writer = csv.writer(fp, quoting=csv.QUOTE_MINIMAL)
csv_writer.writerow(['嗨', '="00000011"', 'Lovely Spam', 'Wonderful Spam'])
buffer = open(filename, 'r').read()
print (buffer)
os.unlink(filename)
f= open("final.csv", "w")
f.write(buffer)
f.close()