在c++ builder中怎么样让一个字符串(如A1B2C3D4E5F6G7)从左往右两位两位在Edit1至Edit7中分别显示?
能否实现检测到只要有字符A开头的就自动在Edit1中显示检测到B就自动在Edit2中显示,其他类推。...
能否实现检测到只要有字符A开头的就自动在Edit1中显示检测到B就自动在Edit2中显示,其他类推。
展开
展开全部
C++Builder中对字符串的处理有一个很有用的方法:SubString(int i,int j);
就是从字符串中提取特定的字符或字符串出来
i是表示开始提取的字符串在元字符串中的位置,j表示要截取的字符串的长度。
例如:
AnsiString str,str1,str2;
str="A1B2C3D4E5F6G7";
str1=str.SubString(1,3);(这里str1="A1B")
str2=str.SubString(5,1);(这里str2="C")
不知道这样说你能看明白吗?
这样你的问题就不是问题了!
就是从字符串中提取特定的字符或字符串出来
i是表示开始提取的字符串在元字符串中的位置,j表示要截取的字符串的长度。
例如:
AnsiString str,str1,str2;
str="A1B2C3D4E5F6G7";
str1=str.SubString(1,3);(这里str1="A1B")
str2=str.SubString(5,1);(这里str2="C")
不知道这样说你能看明白吗?
这样你的问题就不是问题了!
追问
能否实现检测到只要有字符A开头的就自动在Edit1中显示检测到B就自动在Edit2中显示,其他类推。能否给个完整程序呢?我初学c++ builder。
追答
能够把每一个字符都单独提取出来,自然可以达到你的要求了!
AnsiString str,str1,str2;
str1="A1B2C3D4E5F6G7";
str=str1.SubString(1,1);
if(str=="A")
Edit1->Text=str1;
else if(str=="B")
Edit2->Text=str1;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询