zoukankan      html  css  js  c++  java
  • winfrom数据导出

    /// <summary>
    /// 数据导出
    /// </summary>
    /// <param name="dataGridView"></param>
    /// <returns></returns>
    private bool dataGridViewToCSV(DataGridView dataGridView)
    {
    if (dataGridView.Rows.Count == 0)
    {
    MessageBox.Show("没有数据可导出!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
    return false;
    }
    SaveFileDialog saveFileDialog = new SaveFileDialog();
    saveFileDialog.Filter = "CSV files (*.csv)|*.csv";
    saveFileDialog.FilterIndex = 0;
    saveFileDialog.RestoreDirectory = true;
    saveFileDialog.CreatePrompt = true;
    saveFileDialog.FileName = null;
    saveFileDialog.Title = "保存";

    DateTime now = DateTime.Now;
    saveFileDialog.FileName = now.Year.ToString().PadLeft(2)
    + now.Month.ToString().PadLeft(2, '0')
    + now.Day.ToString().PadLeft(2, '0') + "-"
    + now.Hour.ToString().PadLeft(2, '0')
    + now.Minute.ToString().PadLeft(2, '0')
    + now.Second.ToString().PadLeft(2, '0');

    if (saveFileDialog.ShowDialog() == DialogResult.OK)
    {
    Stream stream = saveFileDialog.OpenFile();
    StreamWriter sw = new StreamWriter(stream, System.Text.Encoding.GetEncoding(-0));
    string strLine = "";
    try
    {
    //表头
    for (int i = 0; i < dataGridView.ColumnCount; i++)
    {
    if (i > 0)
    strLine += ",";
    strLine += dataGridView.Columns[i].HeaderText;
    }
    strLine.Remove(strLine.Length - 1);
    sw.WriteLine(strLine);
    strLine = "";
    //表的内容
    for (int j = 0; j < dataGridView.Rows.Count; j++)
    {
    strLine = "";
    int colCount = dataGridView.Columns.Count;
    for (int k = 0; k < colCount; k++)
    {
    if (k > 0 && k < colCount)
    strLine += ",";
    if (dataGridView.Rows[j].Cells[k].Value == null)
    strLine += "";
    else
    {
    string cell = dataGridView.Rows[j].Cells[k].Value.ToString().Trim();
    //防止里面含有特殊符号
    cell = cell.Replace(""", """");
    cell = """ + cell + """;
    strLine += cell;
    }
    }
    sw.WriteLine(strLine);
    }
    sw.Close();
    stream.Close();
    MessageBox.Show("数据被导出到:" + saveFileDialog.FileName.ToString(), "导出完毕", MessageBoxButtons.OK, MessageBoxIcon.Information);
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message, "导出错误", MessageBoxButtons.OK, MessageBoxIcon.Information);
    return false;
    }
    }
    return true;
    }

  • 相关阅读:
    链表相交
    环路检测
    lambada表达式对集合的过滤和相互转换
    lambda表达式对集合的遍历
    centos7常用命令
    小程序文件
    扫码登录
    位操作
    使用json-lib转换对象为字符串时的特殊处理
    javac 编译异常总结
  • 原文地址:https://www.cnblogs.com/ouyangkai/p/11089427.html
Copyright © 2011-2022 走看看