Python Win32,如何将XLS保存为CSV?

3 投票
4 回答
6864 浏览
提问于 2025-04-16 18:41

我正在用win32com加载一个.xlsx文件,想在完成后把结果保存为csv格式。

myworkbook.SaveAs('results.csv')

这样做给我的是一个带有csv扩展名的xlsx文件。我该怎么才能真正保存为CSV格式呢?

4 个回答

3

你需要在文件名后面指定文件类型。

对于CSV文件,有以下几种模式可以选择:

xlCSV = 6         # Comma separated value.
xlCSVMac = 22,    # Comma separated value.
xlCSVMSDOS = 24,  # Comma separated value.
xlCSVWindows =23, # Comma separated value.

可用的文件格式可以在这里找到,saveAs方法的详细说明可以在这里找到。虽然没有Python的示例,但参数和数值应该是一样的。

4

这是关于saveAs的文档链接:http://msdn.microsoft.com/en-us/library/bb214129.aspx

from win32com.client import constants as c
myWorkBook.SaveAs('results.csv', c.xlCSV)
4

觉得如果你在文件名后面加上类型的话,它应该能正常工作。(我现在没法测试。)

我认为CSV(DOS)的类型是24。

myworkbook.SaveAs('results.csv', 24)

撰写回答