to steps(壮丁):edit1.text:=myini.ReadString('main','aa','''''');我试过没有用!!!
edit.text := myini.ReadString('main','aa',''); if edit.Text = '' then edit.Text := ''''''; flatedit1.text := edit1.Text;
问题的关键在于,写入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的字符串使用'来分隔,所以必须用''来表示一个'造成的。 不知道你明白了没有?
另外,你可利用ReadString的最后一个参数来判断是否取得了正确的值。
edit1.text:=flatedit1.text:=myini.ReadString('main','aa',str);
可以了吧!加分!!!
你默认的他是''的,他就给你显示是空的,
现在让他默认是一个字符串,它就是一个字符串了!很听话的!
第三个PARAM是当读写错误时返回的标志性字串,flyby是错的。
这个PARAM可用空字串。
edit1.text:=flatedit1.text:=myini.ReadString('main','aa','');
这个语法对吗?DELPHI不是C啊。
把赋值分开试试。
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;
''就是空字符
如果要edit1显示''
那要这样
myini:= tinifile.Create('c:\ini.ini');
edit1.text:=myini.ReadString('main','aa','''''');
flatedit1.text:=edit1.Text;
if edit.Text = '' then edit.Text := '''''';
flatedit1.text := edit1.Text;
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的字符串使用'来分隔,所以必须用''来表示一个'造成的。
不知道你明白了没有?