將文字與數字一起讀檔的問題 |
答題得分者是:jimmychn
|
piliboy
一般會員 發表:4 回覆:8 積分:2 註冊:2008-08-29 發送簡訊給我 |
這是我的txt檔
小黃 81 小白 76 小黑 65 小頭 42 小人 99 我無法讀出中文字,連數字也讀成亂數.請大家一起動動腦 幫忙解一下 [code cpp] void __fastcall TForm1::Button1Click(TObject *Sender) { ifstream fin; fin.open("C:\\bcb\\ex3\\test.txt"); char s[100]; int n[10]; while (!fin.eof()) { for(int i=0;i<5;i ) { fin>>s[i]>>"">>n[i]; } } for(int j=0;j<20;j ) Memo1->Lines->Add(s[j] n[j]); } [/code]
------
有自信的人 不一定成功 但沒有自信的人 一定失敗 |
aftcast
站務副站長 發表:81 回覆:1485 積分:1763 註冊:2002-11-21 發送簡訊給我 |
|
piliboy
一般會員 發表:4 回覆:8 積分:2 註冊:2008-08-29 發送簡訊給我 |
|
jimmychn
一般會員 發表:3 回覆:21 積分:19 註冊:2002-09-09 發送簡訊給我 |
按照敘述應該是讀入檔案,並分開儲存在字串陣列與數字陣列。不知是否合意???
[code cpp] void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString s[10]; int n[10]; TStrings *sList=new TStringList(); Memo1->Lines->LoadFromFile("TEST.TXT"); for(int i=0;i sList->CommaText=Memo1->Lines->Strings[i]; if (sList->Count>=2) { s[i]=sList->Strings[0]; n[i]=sList->Strings[1].ToInt(); } } [/code]
------
>>>好心有好報 |
piliboy
一般會員 發表:4 回覆:8 積分:2 註冊:2008-08-29 發送簡訊給我 |
|
jimmychn
一般會員 發表:3 回覆:21 積分:19 註冊:2002-09-09 發送簡訊給我 |
1.CommaText 是把字串陣列化成由逗號或空格分隔開來的字串列,它是雙向(Get/Set)的喔!
例: sList->CommaText="123,abc def,\"ghi jkl\""; 相當執行右列全部程序 sList[0]="123"; sList[1]="abc"; sList[2]="abc"; sList[3]="def"; sList[4]="ghi jkl"; 2.n[i]這個元素是int,但右邊的字串陣列(sList)元素是字串(AnsiString),必須轉型成 int 才能存入int 陣列中! ===================引 用 piliboy 文 章=================== 你的方法正是我想要的 想了好久想不出來 不過我還有兩個問題 請問一下 1. CommaText 的用法 2. n[i]=sList->Strings[1].ToInt(); n[i] 為什麼還要再轉成 int ,一開始不就宣告成 int 矩陣了嗎
------
>>>好心有好報 |
piliboy
一般會員 發表:4 回覆:8 積分:2 註冊:2008-08-29 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |