我要从aa.txt中读取一个字符串
要求才第10位开始读,读5位,读给string s;
在线等马上给分

解决方案 »

  1.   

    你先用readln读十行后,再用readln读一行,取前五位不就可以了。
      

  2.   

    呵呵,一行没解决了....
    const
      sFN:string='aa.txt';
      iReadLen:integer=5;
      iOffset:integer=9;
    var
      fs:TFileStream;
      buff:pointer;
      sOut:string;
    begin
      setLength(sOut,iReadLen);
      if not FileExists(sFN) then exit;
      fs:=TFileStream.Create(sFN,fmopenread);
      GetMem(buff,iReadLen);
      try
        fs.Seek(ioffset,soBeginning);
        fs.ReadBuffer(buff^,iReadLen);
        move(buff^,sOut[1],iReadLen);
        //ShowMessage(sOut);
      finally
        freeMem(buff,iReadLen);
        fs.Free;
      end;end;
      

  3.   

    memo1.Lines.LoadFromFile('C:\aa.txt');
    showmessage(leftstr(memo1.Lines.Strings[9]),5);
      

  4.   

    showmessage(leftstr(memo1.Lines.Strings[9],5));
      

  5.   

    function CopyString: string;
    var
      lstr: TStringList;
    begin
      try
        lstr := TStringList.Create;
        lstr.LoadFromFile('c:\aa.txt');
        Result := copy(lstr.Text, 10, 5);
      finally
        FreeAndNil(lstr);
      end;
    end;
      

  6.   

    楼主的意思不明
    1.从一个串中取得第10位后的5个字符
    s:=copy(aa.txt,10,5);
    2.从aa.txt文件中取得第10行的串,再从第10位开始取5个字符。
    var
      sl:TStringList;
      sl:=TStringList.Creat(nil);
    //两行
      sl.LoadFromFile('aa.txt');
      s:=copy(sl.string[10],10,5);
      

  7.   

    with TStringList.Create do
    begin
      try
        LoadFromFile('aa.txt');
        result := copy(Text,10,5);
      finally
        Free;
      end;
    end;