HText为string类型变量HText:=read(InitData.Path+'\f'+Session.Param3+'.dat');//出错处
怎么也找不出原因,高手请帮忙看一下!
我用的是D7,如果
read(InitData.Path+'\f'+Session.Param3+'.dat')这样实在不能读出来的话,换一种什么样的方法又能替代?

解决方案 »

  1.   

    read 不是这么用的。看帮助吧。var  F1, F2: TextFile;
      Ch: Char;
    begin
      if OpenDialog1.Execute then begin
        AssignFile(F1, OpenDialog1.Filename);
        Reset(F1);
        if SaveDialog1.Execute then begin
          AssignFile(F2, SaveDialog1.Filename);
          Rewrite(F2);
          while not Eof(F1) do
          begin
            Read(F1, Ch);
            Write(F2, Ch);
          end;
          CloseFile(F2);
        end;
        CloseFile(F1);
      end;end;
      

  2.   

    代码我是从别人哪里移置过来的.别人用的是D6
    这是全句
                  HText:=read(InitData.Path+'\f'+session.param3+'.dat');
                  HText:=trim(HText+#13+Session.Param1);(是trim 在这里CSDN不让发所以打了','号)              write(InitData.Path+'\f'+Session.Param3+'.dat',HText);
      

  3.   

    对的,read()的用法的确不是那样
    如果lz想对字符串赋值的话,直接赋值就好,不用read.
    比如
    HText:=InitData.Path+'\f'+Session.Param3+'.dat';
    其中变量皆为string型
      

  4.   

    呵呵~
    我是LZ哦~
    其实我看了一下这段语句的意思应该是把文读入.DAT文件里面.
    其在读方前保存了以前.DAT里面原始数据.
    这句话HText:=read(InitData.Path+'\f'+session.param3+'.dat');
    应该是先把.DAT里面的内容取出来存在HTEXT里面.然后
    再用WRITE把数据一起写入.DAT里面~
    不知道高手们觉得是不是这样~
    看看何如改写!
      

  5.   

    试过,改成这样HText:=read(HText,InitData.Path+'\f'+session.param3+'.dat');
    也还是同样的错误!
      

  6.   

    别人写的代码可能是自己定义的 read, write 函数。