如何在 XML 文件中添加换行符(换行符)?
How to add a newline (line break) in XML file?
我有一个 XML 文件,我想在文本中换行
"Sample Text 123"这样
Sample
Text 123
我已经尝试了所有我想说的 


\n
但没有任何效果:
<?xml version="1.0" encoding="UTF-8" ?>
<item>
<text>Address</text>
<data>
Sample 
 Text 123
</data>
</item>
A 换行符(又名换行符或换行符,EOL) 是标记一行文本结束的特殊字符或字符序列。使用的确切代码因操作系统而异:
LF: Unix
CR: Mac OS up to version 9
CR+LF: Windows, DOS
您可以使用 

换行 (LF) 或 
回车 return (CR),并且 XML 解析器会将其替换为相应的将解析的文本移交给应用程序时的字符。这些可以手动添加,如您在示例中所示,但在需要以编程方式在字符串中添加换行符时特别方便:
- 常用编程语言:
LF
: "
"
CR
: "
"
- XSLT:
LF
: <xsl:text>
</xsl:text>
CR
: <xsl:text>
</xsl:text>
或者,如果您想立即在 XML 中看到它,只需按字面意思输入即可:
<?xml version="1.0" encoding="UTF-8" ?>
<item>
<text>Address</text>
<data>
Sample
Text 123
</data>
</item>
换行符还没有出现?
请记住,应用程序如何解释文本(包括换行符)取决于它。如果您发现换行符被忽略,可能是应用程序自动将换行符分隔的文本一起运行。
例如,HTML 浏览器会忽略换行符(并且会规范化文本中的 space,以便合并多个 space)。在 HTML、
中换行
- 使用
<br/>
;或
- 在
div
或 p
等元素中换行,默认情况下会在封闭文本后换行,或者在 pre
这样的元素中换行,默认情况下通常会保留白色space 和换行符;或
- 使用 CSS 样式,例如
white-space
来控制换行渲染。
XML 应用程序不合作?
如果 XML 应用程序不尊重您的换行符,并且在应用程序的处理模型中工作也无济于事,另一种可能的方法是使用 CDATA
告诉 XML parser not 解析包含的文本
换行符。
<?xml version="1.0" encoding="UTF-8" ?>
<item>
<text>Address</text>
<data>
<![CDATA[Sample
Text 123]]>
</data>
</item>
或者,如果 HTML 标记在下游被识别:
<?xml version="1.0" encoding="UTF-8" ?>
<item>
<text>Address</text>
<data>
<![CDATA[Sample <br/>
Text 123]]>
</data>
</item>
这是否有帮助将取决于 XML 处理管道中一个或多个阶段的应用程序定义的语义,XML 通过。
底线
A 换行符(又名换行符或换行符,EOL) 可以像 XML 中的任何字符一样添加,但要注意
- 不同的OS约定
- 不同的 XML 应用语义
我有一个 XML 文件,我想在文本中换行 "Sample Text 123"这样
Sample
Text 123
我已经尝试了所有我想说的 


\n
但没有任何效果:
<?xml version="1.0" encoding="UTF-8" ?>
<item>
<text>Address</text>
<data>
Sample 
 Text 123
</data>
</item>
A 换行符(又名换行符或换行符,EOL) 是标记一行文本结束的特殊字符或字符序列。使用的确切代码因操作系统而异:
LF: Unix
CR: Mac OS up to version 9
CR+LF: Windows, DOS
您可以使用 

换行 (LF) 或 
回车 return (CR),并且 XML 解析器会将其替换为相应的将解析的文本移交给应用程序时的字符。这些可以手动添加,如您在示例中所示,但在需要以编程方式在字符串中添加换行符时特别方便:
- 常用编程语言:
LF
:"
"
CR
:"
"
- XSLT:
LF
:<xsl:text>
</xsl:text>
CR
:<xsl:text>
</xsl:text>
或者,如果您想立即在 XML 中看到它,只需按字面意思输入即可:
<?xml version="1.0" encoding="UTF-8" ?>
<item>
<text>Address</text>
<data>
Sample
Text 123
</data>
</item>
换行符还没有出现?
请记住,应用程序如何解释文本(包括换行符)取决于它。如果您发现换行符被忽略,可能是应用程序自动将换行符分隔的文本一起运行。
例如,HTML 浏览器会忽略换行符(并且会规范化文本中的 space,以便合并多个 space)。在 HTML、
中换行- 使用
<br/>
;或 - 在
div
或p
等元素中换行,默认情况下会在封闭文本后换行,或者在pre
这样的元素中换行,默认情况下通常会保留白色space 和换行符;或 - 使用 CSS 样式,例如
white-space
来控制换行渲染。
XML 应用程序不合作?
如果 XML 应用程序不尊重您的换行符,并且在应用程序的处理模型中工作也无济于事,另一种可能的方法是使用 CDATA
告诉 XML parser not 解析包含的文本
换行符。
<?xml version="1.0" encoding="UTF-8" ?>
<item>
<text>Address</text>
<data>
<![CDATA[Sample
Text 123]]>
</data>
</item>
或者,如果 HTML 标记在下游被识别:
<?xml version="1.0" encoding="UTF-8" ?>
<item>
<text>Address</text>
<data>
<![CDATA[Sample <br/>
Text 123]]>
</data>
</item>
这是否有帮助将取决于 XML 处理管道中一个或多个阶段的应用程序定义的语义,XML 通过。
底线
A 换行符(又名换行符或换行符,EOL) 可以像 XML 中的任何字符一样添加,但要注意
- 不同的OS约定
- 不同的 XML 应用语义