string sql = @"SELECT Serial AS 序号 , Type AS 类型 , ItemChanage AS 变更项目 , Name AS 单位名称 , TypeName AS 单位性质 , Place AS 经营场所面积 , PlaceUsed AS 使用面积 , LicenceSerialHealth AS 原许可证号 , Licence AS 许可证号 , LicenceDateStart AS 发证日期 , LicenceDataEnd AS 许可有效期 , LicenceItem AS 许可项目 , BusinePosition AS 地址 , BusinePositionOwnership AS 房屋产权 , OwnerShipTypeName AS 经济性质 , Principal AS 业主 , PersonIdNumber AS 身份证号码 , PersonLegal AS 法人及法人代表 , WorkerCount AS 职工人数 , Tel AS 联系电话 , LicenceGov AS 发证机关 FROM sup_shi_company"; if (where != "") sql += string.Format(" where {0}", where); DataSet ds = DBHelperSQL.Query(sql); HttpResponse resp; resp = Page.Response; resp.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312"); resp.ContentType = "application/ms-excel"; resp.AppendHeader("Content-Disposition", "attachment;filename=Excel.xls"); string colHeaders = "", ls_item = ""; //定义表对象与行对象,同时用DataSet对其值进行初始化 System.Data.DataTable dt = ds.Tables[0]; DataRow[] myRow = dt.Select();//可以类似dt.Select("id>10")之形式达到数据筛选目的 int i = 0; int cl = dt.Columns.Count; //取得数据表各列标题,各标题之间以\t分割,最后一个列标题后加回车符 for (i = 0; i < cl; i++) { if (i == (cl - 1))//最后一列,加\n { colHeaders += dt.Columns[i].Caption.ToString() + "\n"; } else { colHeaders += dt.Columns[i].Caption.ToString() + "\t"; } } resp.Write(colHeaders); //向HTTP输出流中写入取得的数据信息 //逐行处理数据 foreach (DataRow row in myRow) { //当前行数据写入HTTP输出流,并且置空ls_item以便下行数据 for (i = 0; i < cl; i++) { if (i == (cl - 1))//最后一列,加\n { ls_item += row[i].ToString() + "\n"; } else { if (row.Table.Columns[i].ColumnName != "身份证号码") { ls_item += row[i].ToString() + "\t"; } else { if (row.IsNull(i)) ls_item += "\t"; else ls_item += "'" + row[i].ToString() + "\t"; } } } resp.Write(ls_item); ls_item = ""; } resp.End();
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?