下面语句是没有必要的
      assignfile(f,open_file.FileName);
      reset(f);
      readln(f,s);语句
  memo1.Lines.loadfromfile(s);
  stringlist.LoadFromFile(s);
应该为
      memo1.Lines.loadfromfile(sFileName);
      stringlist.LoadFromFile(sFileName);
OK        
      

解决方案 »

  1.   

    只要如下语句就可以了:
      stringlist:=tstringlist.Create;
      memo1.Clear;
      if Open_file.Execute=true then
      begin
          s:=Open_file.FileName;
          memo1.Lines.loadfromfile(s);
          stringlist.LoadFromFile(s);
      end;
      

  2.   

    memo1.lines.add(s);
    s你定为了string类型;
      

  3.   

    你这里的      memo1.Lines.loadfromfile(s);
          //stringlist.LoadFromFile(s);
    都不是打开一个文本啊??LoadFromFile是需要这样使用啊~LoadFromFile('C:\test1.Txt');你这样的是读取文件的内容~~传给s~~~s不是文件的名称!!
      

  4.   

    LoadFromFile(s)出错是因为LoadFromFile应跟文件名
    而不是字符
    实现从文件将将内容读入
      memo1.Clear;
      if Open_file.Execute=true then
      begin
        memo1.Lines.loadfromfile(open_file.FileName);
      end;
    即可。