請教I/O存取特殊形態檔案之問題 |
答題得分者是:timhuang
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
ccchen
版主 發表:61 回覆:940 積分:1394 註冊:2002-04-15 發送簡訊給我 |
引言: 請教各位前輩﹒ 利用I/O存取特殊形態檔案時(使用TStringGrid元件來顯示資料)﹐是否具有SQL查詢語言或普通查詢替換的方法﹒ 謝謝﹗ 努力,相信會獲得美麗! 忻晟說的不夠清楚, 何種檔案 不過既然可以用StringGrid的方式展現, 另一種考慮方法是將資料讀入TClientDataSet, 連向TDBGrid, 如此TclientDataSet之locate,lookup等等功能均可使用 當然若檔案格式可以自訂, ClientDataset直接存成.cds或xml均是很好的選擇 |
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
謝謝版主的解答﹒ 小弟要存取的特殊形態檔案是一個有關回傳掃描值的檔案(Scan.Out)﹐不能自訂其檔案格式﹐格式如下﹕
0000710384000127728600000000NRS E
00007103840001277293 YRSSEAU7851768E
00007103840001277309 YRSSEAU7851768E
00007103840001277316 YRSSEAU7851768E
00007103840001277323 YRSSEAU7851768E
00007103840001277330 YRSSEAU7851768E
可用一般文字編輯程式打開(如記事本)﹒ 如版主所言﹐利用TClientDataSet元件來擷取与儲存檔案的動作為MyBase觀念﹐但小弟在學習中發現此元件并不能讀取到目前已經存在的檔案﹐而是要先建立一個機制与格式(如欄位標題等)﹐就像是一個新的Table一般﹐再讓使用者進行編輯﹑儲存与擷取的動作﹒(還是小弟對MyBase觀念有所誤解﹐若不正确﹐請前輩指正) 如是這樣的話﹐這個回傳掃描值的檔案已經存在了﹐且檔案內也有其內容﹐是否就不能使用
------
忻晟 |
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
Hi, BDE 可以自訂 txt 檔的格式為資料表的. 1. 將你的檔案改名為 scan.txt[scan]
FILETYPE=FIXED
CHARSET=ASCII
FIELD1=SNO,FLOAT,10,0,0
FIELD2=SNO2,FLOAT,10,0,10
FIELD3=CNO,CHAR,8,0,20
FIELD4=YN,CHAR,1,0,28
FIELD5=RS,CHAR,2,0,29
FIELD6=SN,CHAR,11,0,31
FIELD7=ENDS,CHAR,1,0,42 程式碼如下:
procedure TForm1.Button1Click(Sender: TObject); begin Table1.DatabaseName := 'E:\'; Table1.TableName := 'scan.txt'; Table1.Open; end;弟寫了一個小範例在這裡, 請自行參考: http://delphi.ktop.com.tw/topic.php?TOPIC_ID=34655 發表人 - timhuang 於 2003/07/25 23:37:53 |
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
引言: Hi, BDE 可以自訂 txt 檔的格式為資料表的. 1. 將你的檔案改名為 scan.txt[scan] FILETYPE=FIXED CHARSET=ASCII FIELD1=SNO,FLOAT,10,0,0 FIELD2=SNO2,FLOAT,10,0,10 FIELD3=CNO,CHAR,8,0,20 FIELD4=YN,CHAR,1,0,28 FIELD5=RS,CHAR,2,0,29 FIELD6=SN,CHAR,11,0,31 FIELD7=ENDS,CHAR,1,0,42 程式碼如下:Thanks a lot... > 努力,相信會獲得美麗! 忻晟procedure TForm1.Button1Click(Sender: TObject); begin Table1.DatabaseName := 'E:\'; Table1.TableName := 'scan.txt'; Table1.Open; end;弟寫了一個小範例在這裡, 請自行參考: http://delphi.ktop.com.tw/topic.php?TOPIC_ID=34655 發表人 - timhuang 於 2003/07/25 23:37:53
------
忻晟 |
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |