我遇到以下问题:
我给我的方法一个数据集,它应该把信息扔进一个excel文件,这是我想要的格式的模板。我创建的excel文件有一个标题,一些过滤器和类似的东西,我设置我的方法填充标题后的文件等,但问题是,当我这样做,我失去了我所有的格式模板。我正在使用这个课程http://www.codeproject.com/KB/office/biffcsharp.aspx。我不确定,可能是这个类的实现格式很简单,或者它覆盖了我所有的信息。
我的方法看起来像这样,使用上面链接上的类:
public void PopularSheet()
{
string filename = "C:\\test" + System.Web.HttpContext.Current.Session["SYSTEMCLIENTID"].ToString()+ System.Web.HttpContext.Current.Session["SYSTEMUSERTYPEID"].ToString()+ System.Web.HttpContext.Current.Session["CLIENTID"].ToString()+".xls";
File.Copy("C:\\test.xls", filename);
FileStream stream = new FileStream(filename, FileMode.OpenOrCreate);
ExcelWriter writer = new ExcelWriter(stream);
DataSet ds = GetDataSet();
writer.BeginWrite();
int jValue = ds.Tables[0].Columns.Count;
int iValue = ds.Tables[0].Rows.Count;
// Passa os dados do dataset para a planilha
for (int i = 0; i < iValue; i++)
{
// Lê todas as colunas da linha i
for (int j = 0; j < jValue; j++)
{
writer.WriteCell(i+2, j, ds.Tables[0].Rows[i][j].ToString());
}
}
writer.EndWrite();
stream.Close();
}
我也尝试过使用excel库,http://www.carlosag.net/tools/excelxmlwriter/,但我认为为了加载文件(以便我可以将所需的信息插入其中)我需要加载一个xml文件,这是不可能的!
我使用的另一个库在保存时出现问题,我能够编辑工作表,然后当我保存并打开通过代码生成的excel文件时,它会显示为空。
我不能使用任何会迫使我安装excel的东西,这就是我尝试这些替代品的原因。对我能做什么有什么建议吗?
我需要做什么:
答案 0 :(得分:1)
有一个名为ClosedXML的库,可用于创建openxml文件。
答案 1 :(得分:0)
快速思考:您可以使用.csv而不是标准的.xls文件吗? 如果是这样,您可以轻松填写表格。