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

將string轉int

答題得分者是:andychang1690
Teresa_Chang
一般會員


發表:41
回覆:42
積分:16
註冊:2004-05-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-03-14 16:22:17 IP:140.138.xxx.xxx 訂閱
麻煩幫我看一下我的程式哪裡出問題了,謝謝

<textarea class="c#" rows="10" cols="60" name="code"> AnsiString a; int b; Memo1->Lines->LoadFromFile("C:\\in.txt"); a= Memo1->Lines->Strings[0]; b=StrToInt(a);</textarea>
anyone
中階會員


發表:1
回覆:63
積分:52
註冊:2007-02-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-03-14 16:29:50 IP:59.127.xxx.xxx 未訂閱
你的Memo第一行裡
若有數字以外的東西
就會出錯
你沒有說你錯誤在哪
所以我只能猜測
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-03-14 21:44:02 IP:221.169.xxx.xxx 訂閱
anyone說的沒錯,萬一傳入如空白或非數字字串會產生錯誤,
建議採用:
b=StrToIntDef(a,0);
o可以為你所定義的數字。
請詳見Help
StrToInt 或
StrToIntDef
請參考
------
Andy Chang
Teresa_Chang
一般會員


發表:41
回覆:42
積分:16
註冊:2004-05-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-03-15 21:43:40 IP:61.230.xxx.xxx 訂閱
我從txt內讀入的都是數字而已,例如:
123
324
1
2

錯語的message如下:
cannot convert 'AnsiString' to'const char*'
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-03-15 21:52:33 IP:211.22.xxx.xxx 未訂閱
a= AnsiString(Memo1->Lines->Strings[0]);
Teresa_Chang
一般會員


發表:41
回覆:42
積分:16
註冊:2004-05-04

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-03-15 23:05:27 IP:211.72.xxx.xxx 訂閱
我不是要得到memo內的值,而是想要從memo內讀出值,因為讀出來的型態為ansistring,我想轉成int的型態
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2007-03-15 23:10:35 IP:211.22.xxx.xxx 未訂閱
b= StrToInt(AnsiString(Memo1->Lines->Strings[0]));
Teresa_Chang
一般會員


發表:41
回覆:42
積分:16
註冊:2004-05-04

發送簡訊給我
#8 引用回覆 回覆 發表時間:2007-03-15 23:12:18 IP:211.72.xxx.xxx 訂閱
我最後用andychang1690所提供的StrToIntDef解決了這個問題,謝謝大家的幫忙
lhfde
一般會員


發表:0
回覆:1
積分:0
註冊:2007-03-26

發送簡訊給我
#9 引用回覆 回覆 發表時間:2007-03-26 17:13:53 IP:221.7.xxx.xxx 訂閱
用a.c_str(),或者a.data()
应该也能解决。
系統時間:2024-05-03 13:49:26
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!