我有以文本文件内容是:
  SJJK0201~~已开发票传出现我想读此文本,并将'SJJK0201'赋给一变量A,'已开发票传出'赋给一变量B,请问如何分割呢?
谢谢大家!

解决方案 »

  1.   

    function split(src,dec : string):TStringList; 
    var 
      i : integer; 
      str : string; 
    begin 
      result := TStringList.Create; 
      repeat
        i := pos(dec,src);
        str := copy(src,1,i-1); 
        if (str='') and (i>0) then
        begin 
          delete(src,1,length(dec)); 
          continue; 
        end; 
        if i>0 then 
        begin 
          result.Add(str); 
          delete(src,1,i+length(dec)-1); 
        end; 
      until i<=0; 
      if src<>'' then
        result.Add(src); 
    end;procedure TForm1.Button1Click(Sender: TObject);
    var f1,f2:TextFile;
    ch:string;
      ss : TStringList;
      str,dec ,string1: string;  
    begin
    if OpenDialog1.Execute then
    begin
    assignfile(f1,OpenDialog1.FileName);
    reset(f1);
    readln(f1,ch);
    str := ch;
    dec := '~~';
    ss := split(str,dec);
    a:=ss[0];
    b:=ss[1];
    end;
    end;
      

  2.   


    uses StrUtils;var
      s, A, B: WideString;
      p: Integer;begin
      s := Trim('  SJJK0201~~已开发票传出');
      p := Pos('~~', s);
      A := LeftStr(s, p-1);
      B := RightStr(s, Length(s) - (p+1));
    end;