创建一个CSV文件

问题描述:

我有一个数据里面的日志文件。创建一个CSV文件

我想将此文件转换为CSV(Excel)文件。

我使用Eclipse和Jython中写(所有最新版本),但是当我尝试导入CSV文件,我总是得到这个错误:

ImportError: no module named csv.

你知道为什么吗?

这是我的计划:

import csv 
r = open('file.log') 
w = open('newfile.csv','w') 
writer = csv.writer(w) 
for row in r.readlines(): 
    writer.writerow(row.split()) 
r.close() 
w.close() 

现在我试过openCSV。 CSV文件已创建,但为空。

事实上,问题comse从writeAll

如果我把writeNext,只有一行出现在CSV文件(这是正常的),但与writeAll,该文件是空的。

你知道我该如何解决我的问题吗?

这是我的计划:

from au.com.bytecode.opencsv import * 
from java.io import * 
for line in open("out.log"): 
    try : 
     en = line.split(" ") 
     writer = CSVWriter(FileWriter("out.csv")) 
     writer.writeAll(en) 
    except : IOException 

Jython的似乎并不具有csv模块(很奇怪,不过,它的记录在某些地方)。相反,您应该使用Java库来完成相同的操作。看起来像OpenCSV的人,但你可以自己决定(there's a question about good Java CSV libraries on SO)。

我无法确定这个难以捉摸的CSV模块是否确实存在。但是,您始终可以使用现有的Java库。

+2

为什么`csv`列在[Jython库文档](http://www.jython.org/docs/library/csv.html)中?这很混乱! – mgiuca 2011-02-01 03:30:33

+0

@mgiuca这很奇怪,因为它好像是在一个地方记录的,而不是其他的。我在Jython源代码中找不到任何类似的内容,所以我认为可以安全地假设它不存在或者处于完美的工作状态。可能是错误的。 – 2011-02-01 03:36:09

它看起来像csv是在Jython 2.5.3中实现的。我试着从Python Module of the Week的例子,他们的工作。