用c#实现把数据库表内容导出来生成“.xls”文件
用c#实现把数据库表内容导出来生成“.xls”文件
[解决办法]
http://www.cnblogs.com/top5/archive/2010/02/16/1668801.html
[解决办法]
用Aspose导出
[解决办法]
也可以试试 NPOI.DLL
[解决办法]
http://www.2cto.com/kf/201205/131076.html
[解决办法]
private void btnExcel_Click(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt = DBHelper.GetData("SELECT * FROM TBNAME");//此处获取你数据库中数据
if (dt.Rows.Count > 0)
{
SaveFileDialog sd = new SaveFileDialog();
sd.Filter = "(*.xls)
[解决办法]
*.xls";
sd.FilterIndex = 0;
sd.FileName = "filename.xls";
sd.RestoreDirectory = true;
sd.Title = "导出Excel";
if (sd.ShowDialog() == DialogResult.OK)
{
Stream sm;
sm = sd.OpenFile();
StreamWriter sw = new StreamWriter(sm, System.Text.Encoding.GetEncoding(-0));
string columnTitle = "";
try
{
for (int i = 0; i < dt.Columns.Count; i++)
{
if (i > 0)
{
columnTitle += "\t";
}
columnTitle += dt.Columns[i].HeaderText;
}
sw.WriteLine(columnTitle);
for (int item = 0; item < dt.Rows.Count; item++)
{
string columnValue = "";
for (int cel = 0; cel < dt.Columns.Count; cel++)
{
if (cel > 0)
{
columnValue += "\t";
}
columnValue += dt.Rows[item][cel.ToString().Trim();
}
}
sw.WriteLine(columnValue);
}
sw.Close();
sm.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
sm.Close();
sw.Close();
}
}
}
}