線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2418
推到 Plurk!
推到 Facebook!

TXT 讀取至 陣列 上的問題

缺席
kgwkevin2
一般會員


發表:3
回覆:0
積分:0
註冊:2005-11-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-06-04 11:30:45 IP:59.126.xxx.xxx 訂閱
最後參考  http://delphi.ktop.com.tw/board.php?cid=168&fid=912&tid=65375 此篇中 blk5743 所提出的做法

[code cpp]

FILE *fp;
float array[64][240];
ZeroMemory(array,sizeof(array));
fp = fopen("1.txt","r");

for ( int i = 0; i < 64; i )
{
for ( int j = 0; j < 240; j )
{
fscanf(fp, "%f", &array[i][j]);
}
}

[/code]

同時也感謝 ikk 與 daldal 兩位先生的回應!
各位好,
小弟目前的問題為

目前 TXT 的存放格式為 M*N 的矩陣,
資料間格三個空格,
100 200 300 ... 900
100 200 300 ... 900
100 200 300 ... 900
100 200 300 ... 900

請問該如何分別將數值存入 m*n 的陣列之中呢?

翻過很多論壇上的文章,
但一直無法分解存入陣列之中,
是否能夠點明寫法呢?

其中一種有使用到

AnsiString sz2=StringReplace(sz1, " ", ",", TReplaceFlags()< TStringList *sl=new TStringList;

是否能解釋一下這種的使用方法呢?
程式常常在這邊就出錯,
不知道該如何排除這個問題,
請各位不吝指教,謝謝。
編輯記錄
kgwkevin2 重新編輯於 2008-06-13 00:08:47, 註解 無‧
kgwkevin2 重新編輯於 2008-06-13 00:10:09, 註解 無‧
kgwkevin2 重新編輯於 2008-06-13 00:11:03, 註解 無‧
ikk
尊榮會員


發表:4
回覆:413
積分:768
註冊:2003-06-30

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-06-04 15:08:35 IP:140.116.xxx.xxx 訂閱
你那一行的code, 本來就有問題呀, 沒copy 完整.
它的用意應該是將每一行數字間的空白先用',' 逗點更換, 再將此一行的字串放進sz2,
再產生一個AnsiString sz2=StringReplace(sz1, " ", ",", TReplaceFlags()< TStringList *sl=new TStringList;

是否能解釋一下這種的使用方法呢?
程式常常在這邊就出錯,
不知道該如何排除這個問題,
請各位不吝指教,謝謝。
------
FPGA驗證, FPGA開發平台, http://smims.com
daldal
高階會員


發表:6
回覆:102
積分:226
註冊:2007-06-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-06-04 16:12:24 IP:220.130.xxx.xxx 未訂閱
直接使用StringList的CommaText功能即可,中間的分段符號還可以自訂
舉例來說

[code cpp]
TStringList *vcl = new TStringList(); //建立一個拆解字串用的List
AnsiString p="100 22321 23123 2312 231"; //這裡的p代表你的Txt的其中一行
vcl->CommaText = p; //把p字串拆解到vcl的StringList
......

vcl->Strings[0] 這裡是100
vcl->Strings[1] 這裡是22321
vcl->Strings[2] 這裡是23123
vcl->Strings[3] 這裡是2312
vcl->Strings[4] 這裡是231
存到你的陣列中
......
文件中的每行用for迴圈即可完成
最後別忘記要
delete vcl;
[/code]
StringList拆解字串預設是偵測空白、逗號
若是你要用其他符號來當作資料分隔的話
設定以下即可
[code cpp]
vcl->Delimiter='你自訂的分隔字';
PS:分隔字只能是char單字元
[/code]


系統時間:2024-11-22 10:33:17
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!