Java - 打开CSV - .csv到.xls扩展名

时间:2017-05-24 05:23:52

标签: java excel csv opencsv

我们在java中使用Open CSV库生成了一个.csv文件。我们的要求是将扩展名从.csv更改为.xls。

当我们通过在java中将文件名重命名为.xls而盲目地(在java代码中)更改扩展时,数据未正确对齐或格式化。

在.csv文件中,当我们用表格中的excel值打开它时,它们是正确对齐的。但是当我们更改为.xls并打开它时,所有内容都是逗号分隔值并填充在一列内,即表中的值不会填充在相应的列下。请在屏幕截图下方找到。

enter image description here

3 个答案:

答案 0 :(得分:0)

那么为什么不在excel中打开.csv文件然后执行“另存为”,对于文件类型选择excel电子表格。

这是你缺少的部分。更改扩展名不会更改文件类型。您只是改变了大多数计算机查看文件的方式。在文本编辑器中打开一个真正的Excel电子表格,我保证你会看到很多以逗号分隔的值。

答案 1 :(得分:0)

你应该查找vbs脚本,我知道我正在使用我发现的here脚本中的一个做相反的事情(xlsx到csv)所以我想应该可以做相反的事情,我希望你在那里找到你的解决方案!

这是一个将xlsx转换为csv的脚本:

if WScript.Arguments.Count < 2 Then
WScript.Echo "Error! Please specify the source path and the destination. Usage: XlsToCsv SourcePath.xls Destination.csv"
Wscript.Quit
End If
Dim oExcel
Set oExcel = CreateObject("Excel.Application")
Dim oBook
Set oBook = oExcel.Workbooks.Open(Wscript.Arguments.Item(0))
oBook.SaveAs WScript.Arguments.Item(1), 6
oBook.Close False
oExcel.Quit

答案 2 :(得分:-1)

我认为您需要使用&#34; Apache POI - Java API&#34;对于.xls