csharp: datagridview Convert csv file

 /// <summary>
        /// 保存文件
        /// 涂聚文
        /// 2014-08-29
        /// Geovin Du
        /// </summary>
        /// <param name="dGV"></param>
        /// <param name="filename"></param>
        public static void DataGridViewToCsV(DataGridView dGV, string filename)
        {

            string stOutput = "";
            // Export titles:  
            string sHeaders = "";
            for (int j = 0; j < dGV.Columns.Count; j++)

                sHeaders = sHeaders.ToString() + Convert.ToString(dGV.Columns[j].HeaderText) + ", ";
            stOutput += sHeaders + "\r\n";
            // Export data.  
            for (int i = 0; i < dGV.RowCount - 1; i++)
            {

                string stLine = "";
                for (int j = 0; j < dGV.Rows[i].Cells.Count; j++)
                    stLine = stLine.ToString() + Convert.ToString(dGV.Rows[i].Cells[j].Value) + ", ";
                stOutput += stLine + "\r\n";

            }
            UTF8Encoding utf8 = new UTF8Encoding();
            string file = "1.csv";
            SaveFileDialog saveFileDialog1 = new SaveFileDialog();
            saveFileDialog1.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);//Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
            saveFileDialog1.CreatePrompt = true;
            saveFileDialog1.OverwritePrompt = true;
            saveFileDialog1.Title = "Save text Files";
            //saveFileDialog1.CheckFileExists = true;
            //saveFileDialog1.CheckPathExists = true;
            saveFileDialog1.DefaultExt = "csv";
            saveFileDialog1.Filter = "csv files (*.csv)|*.csv|All files (*.*)|*.*";
            saveFileDialog1.FilterIndex = 1;
            saveFileDialog1.RestoreDirectory = true;
            System.IO.Stream fileStream;
            if (saveFileDialog1.ShowDialog() == DialogResult.OK)
            {
                //FileStream fs = new FileStream(filename, FileMode.Create);
                file = saveFileDialog1.FileName;
                fileStream = saveFileDialog1.OpenFile();
                MemoryStream userInput = new MemoryStream();
                byte[] output = Encoding.Default.GetBytes(stOutput);
                //fileStream.Read(output, 0, (int)output.Length);
                fileStream.Write(output, 0, output.Length);
                fileStream.Close();

            } 


        }
        /// <summary>
        /// 保存文件
        /// 涂聚文
        /// 2014-08-28
        /// Geovin Du
        /// </summary>
        /// <param name="dGV"></param>
        /// <param name="filename"></param>
        public static void DataGridViewToCsVDu(DataGridView dGV, string filename)
        {

            string stOutput = "";

            // Export titles:  
            string sHeaders = "";
            for (int j = 0; j < dGV.Columns.Count; j++)

                sHeaders = sHeaders.ToString() + Convert.ToString(dGV.Columns[j].HeaderText) + ", ";
            stOutput += sHeaders + "\r\n";
            // Export data.  
            for (int i = 0; i < dGV.RowCount - 1; i++)
            {

                string stLine = "";

                for (int j = 0; j < dGV.Rows[i].Cells.Count; j++)

                    stLine = stLine.ToString() + Convert.ToString(dGV.Rows[i].Cells[j].Value) + ", ";

                stOutput += stLine + "\r\n";

            }
            UTF8Encoding utf8 = new UTF8Encoding();
            //Encoding utf16 = Encoding.GetEncoding(1200);//unicode encoding
            byte[] output = Encoding.Default.GetBytes(stOutput);
            FileStream fs = new FileStream(filename, FileMode.Create);
            BinaryWriter bw = new BinaryWriter(fs, Encoding.Default);
            bw.Write(output, 0, output.Length); //write the encoded file
            bw.Flush();
            bw.Close();
            fs.Close();
            

        }

 

你可能感兴趣的:(datagridview)