Re: [問題] 有關檔案讀取

看板C_Sharp作者 (Orz)時間16年前 (2009/10/21 11:29), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《chiang0514 (chiang0514)》之銘言: : 一個新手笨笨的問題 : 我想了很久了 想不到啥好辦法 : 一個TXT擋 : 長的大約是如下的格式 首先,要知道你當初存的時候,是怎麼存的 是空格還是tab空字元? 我這邊舉個例子,是利用tab空字元去read的 前面的開檔讀檔的部份 我就不多著墨了 FileStream F1 = new FileStream(ofdOpen.FileName, FileMode.Open); StreamReader S1 = new StreamReader(F1, Encoding.UTF8); 這兩行是開檔、讀檔的部份,開檔的內容,我是用ofdopen.filename這個位置的檔案. (我用openfiledialog這個方法詢問開檔的位置) 接著,用S1.readline,會一次讀一行. 那我就會用 string[] R1 = S1.ReadLine().Split('\t'); //把每行資料分開取讀 這個去承接.. split('\t')這個,則是希望把讀進來的內容,中間分隔的符號是tab字元 以你的為例,若讀進來r1[0]=A r1[1]=36 r1[2]=3.6 類似這樣. 接著再進行你要的資料處理 讀三次(三行),分別做處理, 細節就不多說了..PS:記得要下指令.把開啟的檔案關起來, 以本例子為例...f1.close()就可以關起來. -- : 資料1 資料2 : A 36 3.6 : A 20 8.6 : A 60 7.6 : B 52 5.5 : B 98 6.3 : B 100 9.5 : C : ... : ... : ... : ... : ... : ... : Z 20 3.3 : Z 30 8.6 : Z 60 4.4 : 為什麼會有3個A呢 因為3個A代表不一樣的日期 : 現在問題是 : 我要如何抓出裡面的數據 : 然後存到A[3] B[3] C[3].......Z[3] 這樣幾個陣列裡面 : A[1]==資料1 A[2]==資料2 ..... : B[1]==資料1 B[2]==資料2 .... : 大約是這樣 : 能幫忙的話 真的非常感謝~~~~搞了一個晚上還沒睡 烏烏........ : 去睡的畫心理也不能心安........繼續拼了..不該拖那麼晚的 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.227.25
文章代碼(AID): #1Ate0aPO (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #1Ate0aPO (C_Sharp)