AnsiString str = "姜億雨|2|";
WideString wstr = "姜億雨|2|";
char s1[10]="|";
char buf2[20];
if( str.SubString(1,6) == "姜億雨" )
ShowMessage("hello");
strcpy(buf2,str.c_str());
int po,wpos;
po = str.Pos("|");
Caption = po;
wpos = wstr.Pos(WideString("|"));
Caption = po;
億 的 GBK编码10进制 33660,GBK编码16进制 (GBK内码) 837C,Unicode编码10进制 20740 Unicode编码16进制 5104,可见7C与字符| 一样
字符“|”的ascii码是 124(0x73)
用wideString就好了
void __fastcall TForm1::btnwsClick(TObject *Sender)
{
AnsiString str = "姜億雨|2|";
WideString wstr = str;
int po,wpos;
wpos = wstr.Pos(("|"));
Caption = wstr.SubString(1,wpos-1);
}