全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1374
推到 Plurk!
推到 Facebook!

TStringList切出來的字串裡為什麼有字元

答題得分者是:kostin
luckhy
一般會員


發表:11
回覆:17
積分:5
註冊:2009-08-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-08-06 19:52:10 IP:203.79.xxx.xxx 訂閱
為什麼切出來的字串裡有字元如下Strings[1].c_str()[4]和Strings[6].c_str()[4]都是'\0' 其它字串裡第五個字元都有很怪的符號''
如:Strings[0].c_str()[4]和Strings[2].c_str()[4] 請問是為什麼,要如何排除
因為我要判斷字串裡第五個字元是否為'\0'
'謝謝~

#define MAX 10

Memo1->Lines->Add("5,1124,0,NS,8,1,3");

String L1_0[MAX],L1_1[MAX],L1_2[MAX],L1_3[MAX],L1_4[MAX],L1_5[MAX],L1_6[MAX];
TStringList* Memo1List = new TStringList();

for(i=0;iLines->Count;i )
{
String tmp =Memo1->Lines->Strings[i];
Memo1List->Delimiter=',';
Memo1List->DelimitedText = tmp;
L1_0[i]=Memo1List->Strings[0];
L1_1[i]=Memo1List->Strings[1];
L1_2[i]=Memo1List->Strings[2];
L1_3[i]=Memo1List->Strings[3];
L1_4[i]=Memo1List->Strings[4];
L1_5[i]=Memo1List->Strings[5];
L1_6[i]=Memo1List->Strings[6];
}
編輯記錄
luckhy 重新編輯於 2010-08-06 19:55:14, 註解 無‧
luckhy 重新編輯於 2010-08-06 19:56:09, 註解 無‧
luckhy
一般會員


發表:11
回覆:17
積分:5
註冊:2009-08-09

發送簡訊給我
#2 引用回覆 回覆 發表時間:2010-08-12 23:05:30 IP:203.79.xxx.xxx 訂閱
這部份不知是不是我的寫法有問題
還是模不出來
請大大指點一下,謝謝~
kostin
一般會員


發表:18
回覆:43
積分:22
註冊:2010-03-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2011-08-05 14:38:59 IP:114.38.xxx.xxx 訂閱
我測起來沒有問題耶   還是我會錯意了
有 // 的部分是我修改的
[code cpp]
#define MAX 10
Memo1->Lines->Clear(); //
Memo2->Lines->Clear(); //
Memo1->Lines->Add("5,1124,0,NS,8,1,3");String L1_0[MAX],L1_1[MAX],L1_2[MAX],L1_3[MAX],L1_4[MAX],L1_5[MAX],L1_6[MAX];
TStringList* Memo1List = new TStringList();
for(int i=0;i < 1 ;i ) //
{
String tmp = Memo1->Lines->Strings[i];
Memo1List->Delimiter=',';
Memo1List->DelimitedText = tmp;
L1_0[i]=Memo1List->Strings[0];
L1_1[i]=Memo1List->Strings[1];
L1_2[i]=Memo1List->Strings[2];
L1_3[i]=Memo1List->Strings[3];
L1_4[i]=Memo1List->Strings[4];
L1_5[i]=Memo1List->Strings[5];
L1_6[i]=Memo1List->Strings[6];
Memo2->Lines->Insert(0,L1_0[i]); //
Memo2->Lines->Insert(0,L1_1[i]); //
Memo2->Lines->Insert(0,L1_2[i]); //
Memo2->Lines->Insert(0,L1_3[i]); //
Memo2->Lines->Insert(0,L1_4[i]); //
Memo2->Lines->Insert(0,L1_5[i]); //
Memo2->Lines->Insert(0,L1_6[i]); //
}
if(L1_2[0]=="0") //
{ShowMessage("YES");} //
else //
{ShowMessage(L1_2[0]);} //
[/code]

------
工程師的世界太深奧了 ~ 總是有不斷的驚奇發生
在解決問題的當下 , 才能確認我的存在
在得到幫助的當下 , 才能發現我不孤單
kostin
一般會員


發表:18
回覆:43
積分:22
註冊:2010-03-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2011-08-05 14:51:48 IP:114.38.xxx.xxx 訂閱
再不行的話用
LeftTrim() //去左边空格
RightTrim() // 去右边空格
Trim() //去左右空格
試看看

Memo2->Lines->Insert(0,L1_0[i].Trim()); //


===================引 用 luckhy 文 章===================
這部份不知是不是我的寫法有問題
還是模不出來
請大大指點一下,謝謝~
------
工程師的世界太深奧了 ~ 總是有不斷的驚奇發生
在解決問題的當下 , 才能確認我的存在
在得到幫助的當下 , 才能發現我不孤單
luckhy
一般會員


發表:11
回覆:17
積分:5
註冊:2009-08-09

發送簡訊給我
#5 引用回覆 回覆 發表時間:2011-08-09 20:37:59 IP:219.91.xxx.xxx 訂閱
謝謝我會在試看看這個方法
系統時間:2017-10-23 21:16:50
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!