procedure TForm1.Button2Click(Sender: TObject);
var
  sTmp: string;
  List: TStringList;
begin
  List := TStringList.Create;
  //List.Clear;  sTmp := '1=' + '未知';
  //List.Add('啊');            {这行屏蔽,则保存的文本就会乱码,反之则不会}
  List.Add(sTmp);  List.SaveToFile('D:\test.txt');
  List.Free;
end;
测试条件delphi7,估计是编码的问题

解决方案 »

  1.   

    统一转换成Utf8
    AnsiToUtf8(sTmp);
    AnsiToUtf8('啊');
      

  2.   

    尽量用DELPHI2010编程.以上的错误一概没有.
      

  3.   

    DELPHI7 编写的许多软件一旦在英文版的WINODWS下或安装有多语言的WINDOWS下多半会乱码..ANSISTRING的问题所以强烈建议使用DELPHI2010编写软件....优秀得不只是一点点.
    DELPHI2010默认使用UTF8的万国码,,,而且DELPHI7的代码可以直接用DELPHI2010打开并编译成功.有少量的地方需要改成pwidechar
    希望不要用DELPHI7,在代码中不停的转换成UTF8了...给分..
    全分..
      

  4.   

    看看你的.pas文件是什么编码格式,如果不是ANSI则另存为ANSI。