将DataSet转换成CSV文件自己的用法

来源:互联网 发布:帝国cms 提交表单 编辑:程序博客网 时间:2024/05/16 17:43

知识点:1、C#.NET 存换行符用/r/n,这样才会换行2、ds的每个table是有名字的 ds.Table[0].ToString()为表名table1 其中[0]是索引 表示ds的第一个表3、相对地址:Response.Write(Request.PhysicalApplicationPath);

4、转成namespace的时候 这样命名 函数public static void Export2CSV和 private static string ConverDataSet2CSV用法:Export2CSV(DsRyMajorTop, "Table1", false, "E:\\company\\JZ\\LDCX_xyw_datav\\pi11e.csv");

转载的源码:#region 001----将DataSet转换成CSV文件            public  void Export2CSV(DataSet ds, string tableName, bool containColumName, string fileName)            {                string csvStr = ConverDataSet2CSV(ds, tableName, containColumName);                if (csvStr == "") return;                FileStream fs = new FileStream(fileName, FileMode.Create, FileAccess.ReadWrite);                //将string转换成byte[]                byte[] csvArray = System.Text.Encoding.UTF8.GetBytes(csvStr.ToCharArray(), 0, csvStr.Length - 1);                fs.Write(csvArray, 0, csvArray.Length - 1);                fs.Close();                fs = null;            }            /// <summary>            /// 将指定的数据集中指定的表转换成CSV字符串            /// </summary>            /// <param name="ds"></param>            /// <param name="tableName"></param>            /// <returns></returns>            public  string ConverDataSet2CSV(DataSet ds, string tableName, bool containColumName)        {            //首先判断数据集中是否包含指定的表                        if (ds == null || !ds.Tables.Contains(tableName))            {                MessageBox.Show("指定的数据集为空或不包含要写出的数据表!", "系统提示:", MessageBoxButtons.OK, MessageBoxIcon.Stop);                return "";            }                       string csvStr = "";            //下面写出数据            DataTable tb = ds.Tables[tableName];            //写表名            //csvStr += tb.TableName + "/n";            //第一步:写出列名            if (containColumName)            {                 foreach (DataColumn column in tb.Columns)                {                    csvStr = "\"" + column.ColumnName + "\"" + ",";                }                //去掉最后一个","                csvStr = csvStr.Remove(csvStr.LastIndexOf(","), 1);                csvStr += "/n";            }            //第二步:写出数据            foreach (DataRow row in tb.Rows)            {                foreach (DataColumn column in tb.Columns)                {                    csvStr += "\"" + row[column].ToString() + "\"" + ",";                }                csvStr = csvStr.Remove(csvStr.LastIndexOf(","), 1);                csvStr += "\r\n";            }            return csvStr;        }            #endregion

	
				
		
原创粉丝点击