疑惑!關於開始檔案的方式 |
答題得分者是:dllee
|
01453
一般會員 發表:7 回覆:10 積分:3 註冊:2007-08-31 發送簡訊給我 |
各位大大您們好,我是一個BCB的新手,最近在學習如何開啟一個s19檔,但是有一些疑惑,
1.開啟檔案的方式有好幾種,如fopen( );fscanf( );ifstream.open();TStringList;TMemoryStream,甚至是CreateFile( )的方式,我不知道到底這些函式的差異在哪,什麼情況下,要用哪一個才比較適當? 2.當我用CreateFile( )開啟檔案時,可利用GetFileSize( )來得到檔案的大小,但是如果我用TStringList方式開啟,有什麼方法也可以同樣讓我得到檔案的大小呢? 3.TOpenDialog與TOpenTextFileDialog的差異是什麼?如果我是要開啟s19檔或bin檔,是不是用哪一個方式都可以呢? 以上問題我想了好久,也找了許多資料,都還摸不著頭緒,希望各位大大能給我一些幫助,謝謝!
------
不斷學習,才能豐富人生! |
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
程式只要可以用就好了,作法有千百萬種,沒有絕對的好或壞,只有個人習慣問題。
1. 開檔的方式, 隨個人高興, 看之後要用什麼方式比較方便就用什麼開, 開得了檔才重要。 2. 使用 TStringList 只能用 LoadFromFile 所有資料都已載入 TStringList 只是在載入的過程 TStringList 已作了處理(0x0,0x0A,0x0D,0x0A0D, 0x0D0A,... 去除作為分Strings的記號), 不一定能得到原始檔案的大小, 只能得到目前載入的資料量大小, 可由 stringList->Text.Length() 得到一個參數的數值,但此數值與檔案大小通常不會一樣,又TStringList載入過程已去除某些資訊,所以無法還原原資料,也不可能得知原檔案大小。如果一定要用 TStringList 讀,又一定要知道原檔有多大,那就只要先用您知道取得檔案大小的方式先取得檔案大小,再用TStringList開檔即可。 3. TOpenDialog 只是讓你選到檔案, 只要選得到檔案, 用什麼元件都可以,不必太在意。 BCB 提供數十/百種的 VCL 元件,寫久了,常用的就那幾個。同一個功能,可以實現的方式也很多種,真的是看個人高興用那一種。
------
http://www.ViewMove.com |
01453
一般會員 發表:7 回覆:10 積分:3 註冊:2007-08-31 發送簡訊給我 |
|
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |