zoukankan      html  css  js  c++  java
  • 直接把数据库中的数据保存在CSV文件中

                     今天突然去聊就来写一个小小的demo喽,嘿嘿

     public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
            private void button1_Click(object sender, EventArgs e)
            {
                SaveFileDialog saveFileDialog1 = new SaveFileDialog();
                saveFileDialog1.Filter = "CSV文件|*.CSV";
                saveFileDialog1.InitialDirectory = "D:\20160323";
                if (saveFileDialog1.ShowDialog() == DialogResult.Cancel)
                {
                    return;
                }
                else
                {
                    DataSet ds = GetTables();
                    string fileName1 = "Blogs";
                    string fileName2 = "AspNetUsers";
                    string fileName3 = "AspNetUserRoles";
                    SaveCSV(ds.Tables[0], fileName1);
                    SaveCSV(ds.Tables[1], fileName2);
                    SaveCSV(ds.Tables[2], fileName3);
                    MessageBox.Show("CSV文件保存成功!");
                }
            }
            public DataSet GetTables()
            {
                string sql = @"select * from Blogs;
                               select * from AspNetUsers;
                               select * from AspNetUserRoles
                             ";
                SqlParameter[] parms = { };
                return SqlHelper.ExecutedataAdapter(sql, parms, CommandType.Text);
            }
            /// <summary>
            /// 将DataTable中数据写入到CSV文件中
            /// </summary>
            /// <param name="dt">提供保存数据的DataTable</param>
            /// <param name="fileName">CSV的文件路径</param>
            public void SaveCSV(DataTable dt, string fileName)
            {
                FileStream fs = new FileStream(fileName, System.IO.FileMode.Create, System.IO.FileAccess.Write);
                StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.Default);
                string data = "";
    
                //写出列名称
                for (int i = 0; i < dt.Columns.Count; i++)
                {
                    data += dt.Columns[i].ColumnName.ToString();
                    if (i < dt.Columns.Count - 1)
                    {
                        data += ",";
                    }
                }
                sw.WriteLine(data);
    
                //写出各行数据
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    data = "";
                    for (int j = 0; j < dt.Columns.Count; j++)
                    {
                        data += dt.Rows[i][j].ToString();
                        if (j < dt.Columns.Count - 1)
                        {
                            data += ",";
                        }
                    }
                    sw.WriteLine(data);
                }
    
                sw.Close();
                fs.Close();
            }
        }
  • 相关阅读:
    Struts2异常处理配置
    struts2支持的结果类型
    Project facet Java 1.8 is not supported by target runtime Apache Tomcat v7.0.
    net.paoding.analysis.exception.PaodingAnalysisException: dic home should not be a file, but a directory!
    struts.xml路径修改后的web配置
    struts.xml中的配置常量的含义
    Spring实战笔记
    2018第2周日
    新人替代旧人
    Web安全总结摘录
  • 原文地址:https://www.cnblogs.com/dyxd/p/5311666.html
Copyright © 2011-2022 走看看