日期:2014-05-18  浏览次数:20934 次

参数问题,大家帮帮忙,谢谢了
使用C#转换EXCEL文件到CSV文件.

Worksheet.SaveAs方法

在msdn上只找到这些信息..我不知道具体参数是什么意思..也不知道怎么用...
public virtual void SaveAs (
string Filename,
[OptionalAttribute] Object FileFormat,
[OptionalAttribute] Object Password,
[OptionalAttribute] Object WriteResPassword,
[OptionalAttribute] Object ReadOnlyRecommended,
[OptionalAttribute] Object CreateBackup,
[OptionalAttribute] Object AddToMru,
[OptionalAttribute] Object TextCodepage,
[OptionalAttribute] Object TextVisualLayout,
[OptionalAttribute] Object Local
)

后来自己在网上找了一下,这样写代码可以运行成功,但是还是不知道这些参数的意思...objOpt是什么也不知道...
sheet.SaveAs("/testDIR/" + sheet.Name + ".csv", Excel.XlFileFormat.xlCSV, null, null, false, false, false, null, null, objOpt);

希望大神给我解答....

------解决方案--------------------
转自msdn

Filename
要保存的文件的名称。可以包含完整路径;否则,Microsoft Office Excel 将文件保存在当前文件夹中。

FileFormat
保存文件时要使用的文件格式。有关有效选项的列表,请参见 FileFormat 属性。对于现有文件,默认格式为最后一种指定文件格式;对于新文件,默认格式为所用 Excel 版本的格式。

Password
一个区分大小写的字符串(不超过 15 个字符),指示为文件指定的保护密码。

WriteResPassword
文件的写保护密码。如果保存文件时指定了密码,但打开文件时没有提供密码,则该文件以只读方式打开。

ReadOnlyRecommended
如果为 true,则在打开该文件时显示一条消息,建议以只读方式打开该文件。

CreateBackup
如果为 true,则创建备份文件。

AddToMru
如果为 true,则将工作簿添加到最近使用的文件列表中。默认值为 false。

TextCodepage
在美国英语版本的 Excel 中未使用。

TextVisualLayout
在美国英语版本的 Excel 中未使用。

Local
如果为 true,则针对 Excel 语言保存文件(包括控制面板设置);如果为 false(默认),则针对 Visual Basic for Applications (VBA) 语言保存文件。

objOpt应该是自定义的一个变量,从名字上看应该是object option的缩写。
第一个参数就是拼接的一个文件名。第二个参数是框架自带的一个枚举,应该是固定使用这个吧,具体的我也没操作过excel
------解决方案--------------------
或者

 xlBook.SaveAs("D:\\Table\\图表1.xls", Excel.XlFileFormat.xlAddIn8,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing);、
其中“Excel.XlFileFormat.xlAddIn8”代表支持office03