★★★★★★紧急求救BCB高手:如何把Edit里面的数据读到整型数组中??特别紧急!!!谢谢!!!!!
请问如何把Edit上的数据读到整型数组中去?在Edit中输入5000个整型,用逗号或者空格隔开.有没有这样的函数供使用??非常紧急.谢谢各位高手和大侠!!!请发到bestjiajiao@163.com.
问题点数:0、回复次数:11Top
1 楼chifengwatch(chifengwatch)回复于 2003-11-02 16:47:12 得分 0
用逗号或者空格隔开
是用逗号,还是用空格,还是逗号和空格都用了?Top
2 楼sprewellkobe(我为软件狂!)回复于 2003-11-02 17:28:29 得分 0
设计一个pre,end标识
每读一个,就更新标识
转换用强制转换,放在try里面
其实算法也可以用第推Top
3 楼GodBirdFlying(飞翔天堂鸟)回复于 2003-11-02 18:17:39 得分 0
Edit 能支持这么大的数据量?
下面的代码能提取字符串中的数据,不过字符串不能以两种和两种以上的分隔符来分割数据.
void __fastcall TForm1::SplitDelimitedText(String Text, //要分解的字符串
String Delimiter, //分割符
TStringList *ResultList //分解后的字符系列
)
{
String TheWord, CommaText;
CommaText=Text+Delimiter;
while (CommaText.Pos(Delimiter)> 0)
{
TheWord= CommaText.SubString(1,CommaText.Pos(Delimiter)-1);
CommaText= CommaText.SubString(CommaText.Pos(Delimiter)+Delimiter.Length(),
CommaText.Length());
if(!TheWord.IsEmpty())
ResultList->Add(TheWord);
}
}Top
4 楼fancy05(浪花)回复于 2003-11-02 18:24:51 得分 0
关注, 学习ing...Top
5 楼ljianq(泉深水清)回复于 2003-11-03 09:14:29 得分 0
vector<int>IntArray;//整型数组
AnsiString str=Edit1->Text;
int pos=str.AnsiPos(",");
int val;
while(pos!=0) {
val=str.SubString(1,pos-1).ToIntDef(0);//如果字符串无效,保存为0
IntArray.push_back(val);
str=str.Delete(1,pos);
pos=str.AnsiPos(",");
}
Top
6 楼Atomictry(天影)回复于 2003-11-03 09:33:00 得分 0
学习Top
7 楼goldflute(箫客)回复于 2003-11-03 11:23:03 得分 0
由于逗号和顿号是或者关系,所以最好先将这些符串统一一下,用TReplace这个东东做。做完了然后再把数字加入数组。Top
8 楼singsing26(太阳.星星.蕉)回复于 2003-11-03 11:27:07 得分 0
5000个整型啊?
一个Edit控件能放得下那么多的数据吗?
学习学习楼上几位的字符串分解的方法
PS:如果人手要输入5000个数据的话,我想人死掉的.Top
9 楼firestars(烦)回复于 2003-11-03 11:33:18 得分 0
楼上是不是正在上机考试啊、Top
10 楼echocheng(时光)回复于 2003-11-03 12:47:21 得分 0
to:ljianq(泉深水清)
你不补充,我就补充了,呵呵
在后面再加上这两句,就比较完整了!
val=str.ToInt();
IntArray.push_back(val);Top
11 楼yjy1001(蓝鲸--优秀得郁闷的鱼)回复于 2003-11-03 13:18:18 得分 0
很容易分割嘛
ljianq(泉深水清) 的方法 很明了
而且不会出错。
Top




