110,534
社区成员
发帖
与我相关
我的任务
分享
#region 用较快的方式导出数据
List<string> colnames = new List<string>();
StringBuilder sb = new StringBuilder();
sb.Append("<Table border=2><tr><td colspan=14>XXX医院住院病人分科台账Excel</td></tr><tr>");
foreach (DataColumn dc in this.currentTable.Columns)
{
string dcname = dc.ColumnName;
if (!dcname.Equals("选择") && !dcname.Equals("INPATIENT_ID"))
{
colnames.Add(dcname);
string str = "<td>" + dcname + "</td>";
sb.Append(str);
}
}
sb.Append("</tr>");
//sb.Append("<tr><td>住院号</td><td>病案号</td><td>姓名</td><td>性别</td><td>年龄</td><td>出院诊断</td><td>出院科室</td><td>工作单位及地址</td><td>家庭电话</td><td>入院时间</td><td>出院时间</td><td>住院天数</td><td>住院医师</td><td>是否已归档</td></tr>");
foreach (DataRow dr in this.currentTable.Rows)
{
string str = "<tr>";
foreach (string dcname in colnames)
{
str += "<td>" + dr[dcname].ToString() + "</td>";
}
str += "</tr>";
sb.Append(str);
}
sb.Append("</table>");
try
{
FileStream fs = new FileStream(fileName, FileMode.Create);
char[] chardata = sb.ToString().ToCharArray();
byte[] bytedata = new byte[chardata.Length * 2];
Encoding.UTF8.GetEncoder().GetBytes(chardata, 0, chardata.Length, bytedata, 0, true);
fs.Seek(0, SeekOrigin.Begin);
fs.Write(bytedata, 0, bytedata.Length);
}
catch (Exception ex)
{
MessageBox.Show("导出过程中出现以下异常:" + ex.Message, "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
#endregion