說明:
使用oleDB讀取純文字檔Text的資料,首先一般利用存文字檔存取資料類似Excel的功能,會有區隔每隔資料與每列資料的規則。
通常我們區隔每隔資料會以Tab鍵區分之。區隔每列資料會以換行之。
例如:
我們使用oleDB讀取Text的資料,跟之前寫的另外兩篇文章的流程與Code類似,但因為csv、Text沒有工作表,相對來講Code比較簡潔。
【C#】《oleDB》如何讀取Excel特定工作表的資料
http://ww0o0ww.pixnet.net/blog/post/64004239
【C#】《oleDB》如何讀取csv(逗號分隔值)的資料
http://ww0o0ww.pixnet.net/blog/post/66205084
來看一下讀取Text的步驟:
步驟1:設定Text的屬性、路徑。
步驟2:依照Text的屬性及路徑開啟檔案
步驟3:讀檔,並將其資料存入List
步驟4:關閉檔案
/*步驟1:設定Text的屬性、路徑*/
//設定讀取的csv屬性(Extended Properties須為文字)
string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Test.csv;Extended Properties='Text;HDR=NO;IMEX=1'";
/*步驟2:依照Text的屬性及路徑開啟檔案*/
//Text路徑及相關資訊匯入
OleDbConnection GetTXT = new OleDbConnection(strCon);
DataTable Table = new DataTable();
//打開檔案
GetTXT.Open();
/*步驟3:讀檔,並將其資料存入List*/
OleDbDataAdapter daTXT = new OleDbDataAdapter("SELECT * FROM [Test.txt]", GetTXT);
oledb_comDatafeed.Fill(Table);
//讀取csv資料並存入List
string[] TXTData;
List<string> ListTXT = new List<string>();
foreach (DataRow dr in Table.Rows)
{
foreach (DataColumn dc in Table.Columns)
{
//Text檔案以 “Tab按鍵” 作為分隔,讀取後Tab按鍵會讀為\t,
//因此刪除\t,並以Split分割字串,
//接下來會以Text檔案的每一列資訊存入TXTData
TXTData = Regex.Split(dr[dc.ColumnName].ToString(), @"\t");
//將每一列的TXTData的資料存入ListTXT
foreach (string SingleData in TXTData)
{
//將字串存入ListTXT
ListTXT.Add(SingleData);
}
}
}
/*步驟4:關閉檔案*/
//結束關閉讀檔(必要,不關會有error)
GetTXT.Close();
Input:
Output:
ListTXT[0]="1"; |
結論:
以oleDB讀取檔案一共有Excel、csv、Text,將在下次比較相異之處。
留言列表