請問如何讀入TXT檔後以表格型式顯示 |
答題得分者是:pceyes
|
itsgero2798
一般會員 ![]() ![]() 發表:17 回覆:17 積分:6 註冊:2007-09-28 發送簡訊給我 |
請問如何將讀入一個TXT檔 格式為
"2008/10/21","下午 07:04:41","19.4","65.8" "2008/10/21","下午 08:04:41","20.4","65.8" "2008/10/21","下午 09:04:41","21.4","65.8" "2008/10/21","下午 10:04:41","18.4","65.8" "2008/10/21","下午 11:04:41","22.4","65.8" "2008/10/21","下午 12:04:41","22.4","65.8" "2008/10/21","下午 13:04:41","21.4","65.8" "2008/10/21","下午 14:04:41","20.4","65.8" "2008/10/21","下午 15:04:41","19.4","65.8" 讀入後以DBGrid的表格顯示為4個欄位資料,或以其他表格顯示也可 謝謝 |
pceyes
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
[code delphi] procedure TForm1.Button1Click(Sender: TObject); var iRow, iCol : integer; sl, sl2 : Tstringlist; begin sl := Tstringlist.create; // 一列一列讀入檔案 sl2 := Tstringlist.create; // 每列切割成四欄 try // 載入檔案 sl.LoadFromFile(extractfilepath(application.ExeName) 'itsgero2798.txt'); StringGrid1.RowCount := sl.count; // 設定StringGrid Row StringGrid1.ColCount := 4; // 設定StringGrid Column for iRow := 0 to sl.count-1 do begin sl2.Text := stringreplace(sl[iRow],'","',#13,[rfReplaceAll]); // 以","切割 sl2.Text := stringreplace(sl2.text,'"','',[rfReplaceAll]); // 清除剩下的" for iCol := 0 to sl2.count-1 do begin StringGrid1.Cells[iCol,iRow] := sl2[iCol]; // 賦值 end; end; finally freeandnil(sl); freeandnil(sl2); end; end; [/code]
------
努力會更接近成功 |
andyto202
一般會員 ![]() ![]() 發表:10 回覆:29 積分:7 註冊:2006-12-07 發送簡訊給我 |
===================引 用 pceyes 文 章=================== [code delphi] procedure TForm1.Button1Click(Sender: TObject); var iRow, iCol : integer; sl, sl2 : Tstringlist; begin sl := Tstringlist.create; // 一列一列讀入檔案 sl2 := Tstringlist.create; // 每列切割成四欄 try // 載入檔案 sl.LoadFromFile(extractfilepath(application.ExeName) 'itsgero2798.txt'); StringGrid1.RowCount := sl.count; // 設定StringGrid Row StringGrid1.ColCount := 4; // 設定StringGrid Column for iRow := 0 to sl.count-1 do begin sl2.Text := stringreplace(sl[iRow],'","',#13,[rfReplaceAll]); // 以","切割 sl2.Text := stringreplace(sl2.text,'"','',[rfReplaceAll]); // 清除剩下的" for iCol := 0 to sl2.count-1 do begin StringGrid1.Cells[iCol,iRow] := sl2[iCol]; // 賦值 end; end; finally freeandnil(sl); freeandnil(sl2); end; end; [/code] 請問您這段程式用的是什麼樣的元件? 我用dbgrid無法編譯耶 ![]() 抱歉 已經找到了 ![]()
編輯記錄
andyto202 重新編輯於 2008-11-16 12:02:27, 註解 無‧
|
itsgero2798
一般會員 ![]() ![]() 發表:17 回覆:17 積分:6 註冊:2007-09-28 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |