你把他当作string不就可把后面的bb取出来,在转换到widestring

解决方案 »

  1.   

    var ch1,ch2 :widestring;
     .....
    ch2:=copy(ch1,length(('hello'+'chr(0))),length(ch1)-length(('hello'+'chr(0))));
      

  2.   

    var
      aa : WideString;
      str : string;
      i : integer;
    begin
      str := '';
      aa := 'hello'+chr(0)+'bbbbb';
      for i := 0 to length(aa)-1 do
      begin
        if aa[i] = chr(0) then
        begin
          str := copy(aa,i+1,length(aa));
        end;
      end;
      i := length(aa);
      edit1.text := aa;
      edit2.text := str;
      

  3.   

    to:ibear
      老大,Delphi是遇#0结束,如果当作string后面的“bbbbbb”就丢掉了。
    to:psqpp
        你的方法是对的,但chr(0)是随机出现的,那该怎么办????
      

  4.   

    TO:bjseesea(斌斌),
    delphi的STRING 可以类似于C串那样遇#0方式结束,
    但它是保存有字串长度的,串中间有多少个#0无所谓.
      

  5.   

    a := 'hello'+chr(0)+'bbbbb';
    Copy(a ,Pos(#0 ,a)+1 ,Length(a)-Pos(#0 ,a))
      

  6.   

    procedure TForm1.Button1Click(Sender: TObject);
    var s: wideString;
    begin
      s:= 'hello'+ chr(0)+ 'bbbbb';
      s:= copy(s,length(s)-4,MaxInt);
      ShowMessage(s);
    end;