我正在处理一个CSV文件,并有以下可用的代码:
reader = csv.reader(open(filename, 'rU'), dialect='excel')
header = reader.next()
不过,为了与代码库中其他部分兼容,我需要使用pkg_resources.resource_stream
来创建一个文件对象,具体操作如下:
fileobj = pkg_resources.resource_stream('foo', 'tests/bar.csv')
reader = csv.reader(fileobj, dialect='excel')
header = reader.next()
我在这里简化了一下 - 基本上
csv.reader
代码是在一个我无法控制的函数中,它需要一个fileobj
。 这会引发以下错误。Error: new-line character seen in unquoted field - do you need to open the file in universal-newline mode?
有什么办法可以在我的
fileobj
中使用通用换行模式吗?我在pkg_resources
文档中没有看到任何相关信息。谢谢。