Datatable导出CSV文件:
DataTable dtList = new DataTable();
T_Product t_pro = new T_Product();
t_pro.DataConn = EC.Common.Base.ModelBase.DataBaseType.EC_Mall;
dtList = B_Product.QueryDataToTable(t_pro, sqlWhere);
if (dtList != null && dtList.Rows.Count > 0 && dtList.Rows.Count <= 3000)//不能大于3000条记录
{
StringBuilder _sb = new StringBuilder();
int i = 0;
#region -- 表头 --
_sb.Append("商品名称,货号,商品编号,商品分类,品牌,重量,单位,备注,商品图片,免运费数量,免运费,配件,市场价,本店价格,"
+ "描述,库存,发布时间,有效期,发货地,是否批发,发票,热销,保修,积分/n");
#endregion
//拼接字符串
foreach (DataRow dr in dtList.Rows)
{
_sb.Append(dr["C_ProductName"].ToString() + ","
+ dr["C_ProductNO"].ToString() + ","
+ dr["C_ProBianhao"].ToString() + ","
+ dr["C_ClassID"].ToString() + ","
+ dr["C_BrandID"].ToString() + ","
+ dr["C_weight"].ToString() + ","
+ dr["C_Unit"].ToString() + ","
+ dr["C_UserRemark"].ToString() + ","
+ dr["C_ImagePath"].ToString() + ","
+ dr["C_FreeNum"].ToString() + ","
+ dr["C_NoShippingPrice"].ToString() + ","
+ dr["C_IsAloneSale"].ToString() + ","
+ dr["C_PriceMarket"].ToString() + ","
+ dr["C_ShopPrice"].ToString() + ","
+ dr["C_Description"].ToString() + ","
+ dr["C_Stocks"].ToString() + ","
+ dr["C_StartDate"].ToString() + ","
+ dr["C_EndDate"].ToString() + ","
+ dr["C_AreaCode"].ToString() + ","
+ dr["C_IsBatch"].ToString() + ","
+ dr["C_Invoice"].ToString() + ","
+ dr["C_IsHot"].ToString() + ","
+ dr["C_Warranty"].ToString() + ","
+ dr["C_JiFen"].ToString());
if (i < dtList.Rows.Count - 1)
{
_sb.Append("/n");
}
i++;
}
//输出Excel -- xls文件的制表符是"/t"而csv文件的制表符是"," --
Response.AddHeader("Content-Disposition", "attachment; filename=" + "3050_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".csv");
Response.ContentType = "application/ms-excel";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.Write(_sb.ToString());
Response.End();
DataTable导出为Excel文件:
DataTable dtList = new DataTable();
T_Product t_pro = new T_Product();
t_pro.DataConn = EC.Common.Base.ModelBase.DataBaseType.EC_Mall;
dtList = B_Product.QueryDataToTable(t_pro, sqlWhere);
if (dtList != null && dtList.Rows.Count > 0)
{
StringBuilder _sb = new StringBuilder();
int i = 0;
#region -- 表头 --
_sb.Append("商品名称/t货号/t商品编号/t商品分类/t品牌/t重量/t单位/t备注/t商品图片/t免运费数量/t免运费/t配件/t市场价/t本店价格/t "
+ "描述/t库存/t发布时间/t有效期/t发货地/t是否批发/t发票/t热销/t保修/t积分/n");
#endregion
//拼接字符串
foreach (DataRow dr in dtList.Rows)
{
_sb.Append(dr["C_ProductName"].ToString() + "/t"
+ dr["C_ProductNO"].ToString() + "/t"
+ dr["C_ProBianhao"].ToString() + "/t"
+ dr["C_ClassID"].ToString() + "/t"
+ dr["C_BrandID"].ToString() + "/t"
+ dr["C_weight"].ToString() + "/t"
+ dr["C_Unit"].ToString() + "/t"
+ dr["C_UserRemark"].ToString() + "/t"
+ dr["C_ImagePath"].ToString() + "/t"
+ dr["C_FreeNum"].ToString() + "/t"
+ dr["C_NoShippingPrice"].ToString() + "/t"
+ dr["C_IsAloneSale"].ToString() + "/t"
+ dr["C_PriceMarket"].ToString() + "/t"
+ dr["C_ShopPrice"].ToString() + "/t"
+ dr["C_Description"].ToString() + "/t"
+ dr["C_Stocks"].ToString() + "/t"
+ dr["C_StartDate"].ToString() + "/t"
+ dr["C_EndDate"].ToString() + "/t"
+ dr["C_AreaCode"].ToString() + "/t"
+ dr["C_IsBatch"].ToString() + "/t"
+ dr["C_Invoice"].ToString() + "/t"
+ dr["C_IsHot"].ToString() + "/t"
+ dr["C_Warranty"].ToString() + "/t"
+ dr["C_JiFen"].ToString());
if (i < dtList.Rows.Count - 1)
{
_sb.Append("/n");
}
i++;
}
//输出Excel -- xls文件的制表符是"/t"而csv文件的制表符是"," --
Response.AddHeader("Content-Disposition", "attachment; filename=" + "3050_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls");
Response.ContentType = "application/ms-excel";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.Write(_sb.ToString());
Response.End();