C#中导出dataGridView数据为Excel
创始人
2024-11-21 02:07:36

C#中导出dataGridView数据为Excel

#region 导出Excel功能函数 ///  ///  dataGridView 导出Excel功能函数 ///  /// dataGridView数据表 /// 路径 private void ExportDataToExcel(DataGridView dataView, string filePath) {     try     {         using (StreamWriter writer = new StreamWriter(filePath, false, Encoding.UTF8))         {             // 写入表头             for (int i = 0; i < dataView.Columns.Count; i++)             {                 writer.Write(dataView.Columns[i].HeaderText);                 if (i < dataView.Columns.Count - 1)                 {                     writer.Write(",");                 }             }             writer.WriteLine();              // 写入数据             foreach (DataGridViewRow row in dataView.Rows)             {                 if (!row.IsNewRow) // 忽略新行                 {                     for (int i = 0; i < dataView.Columns.Count; i++)                     {                         writer.Write(row.Cells[i].Value?.ToString());                         if (i < dataView.Columns.Count - 1)                         {                             writer.Write(",");                         }                     }                     writer.WriteLine();                 }             }         }          MessageBox.Show("Data exported successfully.", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);     }     catch (Exception ex)     {         MessageBox.Show("Error exporting data: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);     } }  #endregion 

按键

     private void menuExportFile_Click(object sender, EventArgs e)      {          using (SaveFileDialog saveFileDialog = new SaveFileDialog())          {              saveFileDialog.Filter = "Excel files (*.xlsx)|*.xlsx|CSV files (*.csv)|*.csv";              saveFileDialog.Title = "Save as";              saveFileDialog.FileName = $"{DateTime.Now:yyyyMMddHHmmss}"; // 默认文件名,以当前时间命名               if (saveFileDialog.ShowDialog() == DialogResult.OK)              {                  string filePath = saveFileDialog.FileName;                  string fileExtension = Path.GetExtension(filePath).ToLower();                   if (fileExtension == ".csv")                  {                      ExportDataToExcel(dataView,filePath);                  }                  else if (fileExtension == ".xlsx")                  {                      ExportDataToExcel(dataView, filePath);                  }                  else                  {                      MessageBox.Show("Unsupported file format.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);                  }              }          }      } 

相关内容

热门资讯

三星造工厂机器人、Meta做家... 据韩国中央日报5月7号报道,全球人工智能竞争正加速向物理AI领域延伸,人形机器人成为产业霸权新焦点。...
超22万颗GPU!SpaceX... 来源:环球网 【环球网科技综合报道】5月7日消息,据《福布斯》报道,美国太空探索技术公司(Spac...
在上海,共绘数据国际合作新蓝图 人民网记者 马作鹏 人工智能高质量发展,离不开算力、算法、数据的协同创新。 国外企业如何参与和融入中...
宇树科技开放全球首个人形机器人... 【CNMO科技消息】5月7日,宇树科技宣布,旗下人形机器人官方共享应用平台UniStore正式全面开...
OpenAI公开大规模稳定训练... 克雷西 发自 凹非寺 量子位 | 公众号 QbitAI OpenAI,这次又真·Open了一下。 刚...