111,126
社区成员
发帖
与我相关
我的任务
分享private void SaveAs() //另存新档按钮 导出成Excel
{
DataTable dt = dc.getTable("select * from table");
if (dt.Rows.Count == 0)
{
MessageBox.Show("没有要输出为excel的数据!");
return;
}
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Filter = "Execl files (*.xls)|*.xls";
saveFileDialog.FilterIndex = 0;
saveFileDialog.RestoreDirectory = true;
saveFileDialog.CreatePrompt = true;
saveFileDialog.Title = "生成Excel";
saveFileDialog.ShowDialog();
Stream myStream;
try
{
myStream = saveFileDialog.OpenFile();
//StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312"));
StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding(-0));
try
{
string str = "字段1\t字段2\t字段3\t";//表头
sw.WriteLine(str);
for (int i = 0; i < dt.Rows.Count; i++)
{
string tempStr = string.Empty;
tempStr += dt.Rows[i]["a"].ToString() + "\t";
tempStr += dt.Rows[i]["b"].ToString() + "\t";
tempStr += dt.Rows[i]["c"].ToString() + "\t";
sw.WriteLine(tempStr);
}
//MessageBox.Show("导出成功!");
}
catch (Exception e)
{
sw.Close();
MessageBox.Show(e.ToString());
}
finally
{
sw.Close();
myStream.Close();
}
sw.Close();
myStream.Close();
}
catch (Exception e)
{
MessageBox.Show(e.Message);
return;
}
}