C#:对csv文件的读写操作
2021-06-12 00:06
标签:save sum replace 读写 data readline ade ring string 由于excel有版本区分,读写的时候容易出问题,所以一般写好excel文件另存为*.csv格式,进行读写 C#:对csv文件的读写操作 标签:save sum replace 读写 data readline ade ring string 原文地址:https://www.cnblogs.com/zbyglls/p/10528485.htmlusing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Data.OleDb;
using System.Data;
using System.Windows.Forms;
//一个csv的读写操作类
namespace WindowsFormsApplication1
{
public class CsvRw
{
public static DataTable OpenCSV(string filePath)
{
DataTable dt = new DataTable();
FileStream fs = new FileStream(filePath, System.IO.FileMode.Open, System.IO.FileAccess.Read);
StreamReader sr = new StreamReader(fs, Encoding.Default);
string strLine = "";
//记录每行记录中的各字段内容
string[] aryLine = null;
string[] tableHead = null;
//标示列数
int columnCount = 0;
//标示是否是读取的第一行
bool IsFirst = true;
int hangshu=0;
// 逐行读取CSV中的数据
while ((strLine = sr.ReadLine()) != null)
{
if (IsFirst == true)
{
tableHead = strLine.Split(‘,‘);
IsFirst = false;
columnCount = tableHead.Length;
for (int i = 0; i )
{
tableHead[i] = tableHead[i].Replace("\"", "");
DataColumn dc = new DataColumn(tableHead[i]);
dt.Columns.Add(dc);
}
}
else
{
aryLine = strLine.Split(‘,‘);
DataRow dr = dt.NewRow();
for (int j = 0; j )
{
dr[j] = aryLine[j].Replace("\"", "");
}
dt.Rows.Add(dr);
}
hangshu += 1;
//Console.WriteLine(dt.Rows.Count);
}
MessageBox.Show(dt.Rows.Count.ToString()+"行数");
//
//if (aryLine != null && aryLine.Length > 0)
//{
// dt.DefaultView.Sort = tableHead[2] + " " + "DESC";
//}
sr.Close();
fs.Close();
return dt;
}
///