從第二行讀起 |
尚未結案
|
ksing
一般會員 發表:12 回覆:16 積分:5 註冊:2005-06-29 發送簡訊給我 |
有一堆固定格式字串的檔案 但第一行為檔頭 不讀取 要從第二行開始讀起 讀進檔案欄位中 有什麼方法呢 以下是我的做法 有什麼錯呢 請指教 AssignFile(F,datafile);
Reset(F);
row := 1;
try
while not EOF(F) do
begin
Readln(F,str);
for i := 1 to 4 do ans[i] := '';
for i := 1 to length(str) do
//count := count 1 ;
StringGrid1.Cells[0,row] := copy(str,3,6);
StringGrid1.Cells[1,row] := copy(str,25,6);
StringGrid1.Cells[2,row] := copy(str,16,4);
StringGrid1.Cells[3,row] := copy(str,47,9);
Inc(row);
StringGrid1.RowCount := row;
|
wyndog
資深會員 發表:7 回覆:362 積分:348 註冊:2004-10-12 發送簡訊給我 |
AssignFile(F, datafile); Reset(F); ReadLn(F, str); // 雖然第一行是檔頭 // 不過,不讀第一行是沒辦法讀接下來的 row := 1; while not EOF(F) do begin // 每列都是一筆資料,當然得在 While 裡每次讀一行進來 Readln(F, str); StringGrid1.Cells[0,row] := Copy(str, 3, 6); StringGrid1.Cells[1,row] := Copy(str,25, 6); StringGrid1.Cells[2,row] := Copy(str,16, 4); StringGrid1.Cells[3,row] := Copy(str,47, 9); Inc(row); StringGrid1.RowCount := row; end; |
jeff377
初階會員 發表:9 回覆:60 積分:33 註冊:2004-08-10 發送簡訊給我 |
var stFile: TStrings; sLine: String; N1: Integer; begin stFile:= TStringList.Create; try stFile.LoadFromFile('C:\Data.txt'); //載入檔案 //N=0為第一行,要由第二行開始處理,所以N=1為啟始 for N1=1 to stFile.Count-1 do begin sLine:= stFile.Strings[N1]; //每次處理一行 //處理資料的程序 end; finally FreeAndNil(stFile); end; end; |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |