========一次性读入
using System;
using System.IO;
using System.Text;
class FileRead1 {
static void Main() {
StreamReader sr = new StreamReader(
"readme.txt", Encoding.GetEncoding("Shift_JIS"));
string text = sr.ReadToEnd();
sr.Close();
Console.Write(text);
}
}
=======不用调用sr.Close();
using System;
using System.IO;
using System.Text;
class FileRead2 {
static void Main() {
string text = "";
using (StreamReader sr = new StreamReader(
"readme.txt", Encoding.GetEncoding("Shift_JIS"))) {
text = sr.ReadToEnd();
}
Console.Write(text);
}
}
======一行一行读入
using System;
using System.IO;
using System.Text;
using System.Collections;
class FileRead4 {
static void Main() {
string line = "";
ArrayList al = new ArrayList();
using (StreamReader sr = new StreamReader(
"readme.txt", Encoding.GetEncoding("Shift_JIS"))) {
while ((line = sr.ReadLine()) != null) {
al.Add(line);
}
}
for (int i = 0; i < al.Count; i++) {
Console.WriteLine(al[i]);
}
}
}
======读CSV文件
OpenFileDialog ofd = new OpenFileDialog();
ofd.FileName = "";
ofd.DefaultExt = "*.*";
if (ofd.ShowDialog() == DialogResult.OK)
{ textBox_FileName.Text = ofd.FileName;
StreamReader sr = new StreamReader(ofd.FileName, Encoding.GetEncoding("Shift_JIS"));
while (sr.EndOfStream == false)
{
string line = sr.ReadLine();
string[] fields = line.Split(',');
//string[] fields = line.Split('\t');
//TSVファイルの場合
for (int i=0; i < fields.Length; i++) {
textBox_Doc.Text += fields[i] + "\r\n";
}
}
}
}
=====读取Csv文件返回DataSet
public class CsvDAO
{
public static OleDbConnection OleCon = new OleDbConnection();
public static OleDbCommand OleCmd = new OleDbCommand();
public static OleDbDataAdapter OleDa = new OleDbDataAdapter();
#region 读取Csv文件返回DataSet
/// <summary>
/// 读取Csv文件返回DataSet
/// </summary>
/// <param name="sql">查询语句 </param>
/// <param name="FilePath">文件路径 </param>
/// <returns>Csv内容</returns>
public static DataSet CsvReader(string sql,string FilePath)
{
DataSet CsvData = new DataSet();
OleCon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FilePath + ";Extended Properties='Text;FMT=Delimited;HDR=YES;'";
OleCon.Open();
OleCmd.Connection = OleCon;
OleCmd.CommandText = sql;
OleDa.SelectCommand=OleCmd;
try
{
OleDa.Fill(CsvData,"Csv");
return CsvData;
}
catch
{
return CsvData;
}
finally
{
OleCon.Close();
OleCmd.Dispose();
OleDa.Dispose();
OleCon.Dispose();
}
}
#endregion
}
------------------------------------------------------------------------------------------------------------------------------
// DataGridViewをCSV出力するサンプル(C#.NET/VS2005)
------------------------------------------------------------------------------------------------------------------------------
public void SaveCsv(String fp)
{
// CSVファイルオープン
StreamWriter sw =
new StreamWriter(fp, false,
System.Text.Encoding.GetEncoding("SHIFT-JIS"));
for (int r = 0; r <= this.Rows.Count - 1; r++)
{
for (int c = 0; c <= this.Columns.Count - 1; c++)
{
// DataGridViewのセルのデータ取得
String dt = "";
if (this.Rows[r].Cells[c].Value != null)
{
dt = this.Rows[r].Cells[c].Value.
ToString();
}
if (c < this.Columns.Count - 1)
{
dt = dt + ",";
}
// CSVファイル書込
sw.Write(dt);
}
sw.Write("\n");
}
// CSVファイルクローズ
sw.Close();
}
// ----------------------------------------------------------
======写入文件
http://dobon.net/vb/dotnet/file/writefile.html
ASP.NET中三种操作Excel的方法
http://www.cnblogs.com/qfcndtt/archive/2012/05/30/2526627.html
CSVファイルをDataTableに読み込んで表示する
http://www.oborodukiyo.info/Forms/VS2008/F-ReadCSVToDataTable.aspx
DataTableからCSVファイル生成
http://challengeandresponse.blogspot.jp/2014/04/cdatatablecsv.html
DataTableや配列等をCSV形式のファイルとして保存する