是否可以使用Delphi在ini文件中使用换行符?
我有一个我想使用的字符串值,但它需要能够换行。我不需要任何其他格式的文本。
我该怎么做?
答案 0 :(得分:9)
由您决定编码换行符的方法。
取决于您要使用的用途,以及您要应用于解码它的策略。
我使用网址编码。这样我可以涵盖更广泛的可能值。有许多URL解码实现可用。
或者您可以关注Orjan的建议。或者发明自己的。
答案 1 :(得分:6)
自从我做Delphi以来已经有一段时间了,但我认为你不能直接包含换行符 - 一行是一行。
但正如Örjan所说,你可以在你的字符串中包含可以被程序解释为换行符的字符。
我怀疑“\ n”是否会在.ini文件中以任何方式自动处理,但您可以包含一些其他很少使用的字符,例如竖线(|)或代字号(〜),然后让您的应用将其转换为换行符。
答案 2 :(得分:3)
当值存储在TStringList中时,我也需要这个。 为了解决这个问题,我使用了TStringList.DelimitedText属性,而不是TStringList.Text:
定义分隔符:
Items.StrictDelimiter:= True;
Items.Delimiter:= ';';
保存:
IniFile.WriteString('Session', 'Key', Items.DelimitedText);
负载:
Items.DelimitedText:= IniFile.ReadString('Session', 'Key', '');