0
我的程序读取一个csv文件,但最近输入文件被更改为base64编码。所以,目前的读代码:python过滤输入到csv.reader
with open(uploadFile, 'rb') as csvfile:
spreadSheet = csv.reader(csvfile, delimiter=',')
我知道CSV是一个文件描述符,这不能做,但我想要做的事,如:
import base64
with open(uploadFile, 'rb') as csvfile:
spreadSheet = csv.reader(bas64.decode(csvfile), delimiter=',')
也就是说文件输入将被base64解码,就像在一个管道中,然后解析为一个csv文件。
我可以读取文件解码它写回到另一个文件,然后用csv阅读器读取该文件,但似乎应该有一种方法来做它的管道序列。
解码的字符串(类型的Unicode)我认为csv.reader的第一个参数必须是一个文件名?我在寻找的是一种将输入文件描述符通过过滤器(base64)运行其输出的方法,然后从其输出创建另一个文件描述符。好处是你可以使用这个描述符来说打开微软电子表格,用xlrd – Keir
也许像popen这样的东西? – Keir