我们在java中使用Open CSV库生成了一个.csv文件。我们的要求是将扩展名从.csv更改为.xls。
当我们通过在java中将文件名重命名为.xls而盲目地(在java代码中)更改扩展时,数据未正确对齐或格式化。
在.csv文件中,当我们用表格中的excel值打开它时,它们是正确对齐的。但是当我们更改为.xls并打开它时,所有内容都是逗号分隔值并填充在一列内,即表中的值不会填充在相应的列下。请在屏幕截图下方找到。
答案 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