POI将数据从csv移动到xls

时间:2012-12-12 21:58:24

标签: python csv apache-poi jython xls

我对Python比较陌生,目前我正在努力完成我目前正在研究的这一小部分。 高级:使用带有Jython的POI将.csv文件中的2列数据移动到.xls。 低级:仅从.csv文件中读取两列数据。读取数据后,我将数据从第二行的数据组织到不同的数组中。 e.g。

Name    Status              arrayGreen = ['a, Green'], ['aa, Green']
 a      Green               arrayRed = ['b, Red'], ['bb, Red']
 b      Red       TO =>     arrayOrange = ['c, Orange'], ['cc, Orange']
 c      Orange              arrayYellow = ['d, Yellow'], ['dd, Yellow']
 d      Yellow
 aa     Green
 bb     Red
 cc     Orange
 dd     Yellow

一旦我将数据读入数组,我就想从数组数据中删除',',因为我现在正按数组将它们分组,以供以后使用。 所以现在数据在数组中看起来像这样:

arrayGreen = ['a'], ['aa']
arrayRed = ['b'], ['bb']
arrayOrange = ['c'], ['cc']
arrayYellow = ['d'], ['dd']

现在我想开始使用apache POI来使用数组中的数据并将它们写入.xls我知道如何设置一些格式化并使用POI从.xls读取数据但这是我坚持的地方。 / p>

到目前为止,这是我的代码:

file = open('CSVItems.csv', 'r')

for line in file.readlines():
    content = [value for value in line.split()]

    arrayGreen = [x for x in content if 'Green' in x]
    arrayRed = [x for x in content if 'Red' in x]
    arrayOrange = [x for x in content if 'Orange' in x]
    arrayYellow = [x for x in content if 'Yellow' in x]

    if arrayGreen:
        arrayGreen = [x.replace(',Green', '') for x in arrayGreen]
        print arrayGreen
    elif arrayRed:
        arrayRed= [x.replace(',Red', '') for x in arrayRed]
        print arrayRed
    elif arrayOrange:
        arrayOrange= [x.replace(',Orange', '') for x in arrayOrange]
        print arrayOrange
    elif arrayYellow:
        arrayYellow= [x.replace(',Yellow', '') for x in arrayYellow]
        print arrayYellow

   Console:
   ['a']
   ['b']
   ['c']
   ['d']
   ['aa']
   ['bb']
   ['cc']
   ['dd']

如何使用Jython将每个arrayGreen,arrayRed,arrayOrange,arrayYellow编写为POI中的自己的列。

结束result.xls看起来像这样:

Green    Red    Orange     Yellow
  a       b        c          d       
  aa      bb       cc         dd

感谢。

0 个答案:

没有答案