在有''时,delphi 会去掉,可以改为''''写入即可

解决方案 »

  1.   

    我试了你的程序,可以正确的读出main中aa的值,是不是其他方面的原因?
    另外,你可利用ReadString的最后一个参数来判断是否取得了正确的值。
      

  2.   

    声明一个字符串变量str,然后将你的第三个变量''该为str:
    edit1.text:=flatedit1.text:=myini.ReadString('main','aa',str);
    可以了吧!加分!!!
    你默认的他是''的,他就给你显示是空的,
    现在让他默认是一个字符串,它就是一个字符串了!很听话的!
      

  3.   

    READSTRING
    第三个PARAM是当读写错误时返回的标志性字串,flyby是错的。
    这个PARAM可用空字串。
    edit1.text:=flatedit1.text:=myini.ReadString('main','aa','');
    这个语法对吗?DELPHI不是C啊。
    把赋值分开试试。
      

  4.   


    myini:= tinifile.Create('c:\ini.ini');
    myini.WriteString('main','aa',edit1.text);
    //(查看ini.ini文件:[main]aa=''内容正确)
    读myini:= tinifile.Create('c:\ini.ini');
    edit1.text:=myini.ReadString('main','aa','');
    flatedit1.text:=edit1.Text;
      

  5.   

    这是TEDIT的问题,不是INI的问题
      

  6.   

    清楚的问题呵,怎么会?
    ''就是空字符
    如果要edit1显示''
    那要这样
    myini:= tinifile.Create('c:\ini.ini');
    edit1.text:=myini.ReadString('main','aa','''''');
    flatedit1.text:=edit1.Text; 
      

  7.   

    to steps(壮丁):edit1.text:=myini.ReadString('main','aa','''''');我试过没有用!!!
      

  8.   

    edit.text := myini.ReadString('main','aa','');
    if edit.Text = '' then edit.Text := '''''';
    flatedit1.text := edit1.Text;
      

  9.   

    问题的关键在于,写入Ini的时候,你必须查找要写入的字符串中的',然后用''来代替,这样就可以了:
    var
      ini:tinifile;
    begin
      ini:=Tinifile.Create('c:\ini.ini');
      ini.WriteString('main','ID',edit1.text);//Edit1.Text=[''edit1'']
      showmessage(ini.readstring('main','id',''));
    end;这样将显示['edit1']
    这是因为Delphi的字符串使用'来分隔,所以必须用''来表示一个'造成的。
    不知道你明白了没有?