type
  TCurveData = packed record
    OneRow : string[250];
    end;//保存数据
var
  s:string;
  RecFile : file of TCurveData;
  RecData: TCurveData;  begin
   s:= '张三';
   s:=  s + '33.758';
   ...............(很多字符串构成的)
   
    AssignFile(RecFile,filename); //关联外部文件
    Reset(RecFile);
    RecData.OneRow:= s;
    Seek(RecFile,FileSize(RecFile)); //末尾追加
    Write(RecFile,RecData);
    CloseFile(RecFile); //关闭
  end;//读取数据
var
  RecFile : file of TCurveData;
  RecData: TCurveData;
  CommaStr:TStringList;begin
    Seek(RecFile,  x); //定位到第X行
    Read(RecFile,RecData);
    CommaStr.CommaText:= Trim(RecData.OneRow);
    Edit1.Text:= CommaStr[0];
    Edit2.Text:= CommaStr[1];
    Edit3.Text:= CommaStr[2];
    Edit4.Text:= CommaStr[3];
    ..........
end;
以上是我借用的网上找来的一个方法,但是每一次在末尾添加的数据长度有限制啊,不能超过string[250]。
我现在每次想在末尾追加一行 1000个长度的数据,怎么办啊,,,,,,

解决方案 »

  1.   

    text.append
      

  2.   

    var
      txt:TextFile;
      s:string;
      path:string;
    begin
      path:=ExtractFilePath(Application.ExeName);
      Memo1.Clear;
      AssignFile(txt,path+'\test.txt');
      Append(txt);  //写打开文件,指针到尾
      Writeln(txt,'这是猪悟能写入的文本');  //写入一行带行结束标志
      CloseFile(txt);end;
      

  3.   

    读的时候SPLIT字符串就行。度娘有
      

  4.   

    TStringList读文件进来,随便你添加一行多长
      

  5.   

    txt 就用 tstringlit
    excel 就用xlswriteread
    cvs 没用过