我知道很多次都会问这个问题,但所有的解决方案对我都没有用。属性文件将从Ant中读取。
现在我有这个值应显示如下:
Germany
Hamburg
Kolonie Str. 14.
所以我在属性文件中有以下值
myAdress= Germany \n Hamburg \n Kolonie Str. 14.
我也使用了所有可能的制动线,如:
\ or \ \n or \n \ or ${line.separator}
所有这些可能没有工作,而是显示额外的空白空间而不是新线!那么我所拥有的是:
Germany Hamburg Kolonie Str. 14.
此属性将写入xml文件,代码将直接从xml文件中读取,而不是从属性文件中读取。
<property name="confirmText" value="Germany Hamburg Kolonie Str. 14." />
可能是XML问题,不是来自属性文件,而且XML文件剂量也没有来自属性的任何刹车线!!似乎属性文件无法向XML提供正确的断行!!
答案 0 :(得分:0)
您的问题是,您不能将换行符添加到XML属性中。在您的属性文件中使用\n
是完全正确的。但是您将此属性文件转换为某种专有XML格式,或者至少不转换为Properties
类定义的属性XML格式,因为它的格式不同,您可以在值中存储换行符,因为它们未存储在属性。
因此无论生成XML,都要将属性文件中的值设置为属性值,在此期间,换行符将被预期的空格替换。根据您使用的XML格式,您必须转义换行符。如果读取此XML的软件将属性中的\ n解释为换行符,那么您的属性到XML转换器必须相应地转义换行符,或者您必须在属性文件中使用转义字符,因此{ {1}}将导致\\n
作为双字符序列而不是换行符,因此它将在您的XML属性中以\n
结尾。