为什么 xml.etree.ElementTree 方法 findtext() 将 \r\n 转换为 \n?
Why does xml.etree.ElementTree method findtext() convert \r\n to \n?
我有一个用于测试的 XML 文件,我根据原始字符串测试原始字符串。我的测试文件包含以下数据:
<output>
first line\r\n
second line\r\n
</output>
我的待测函数returns:
first line\r\n
second line\r\n
但是,当我使用 xml.etree.ElementTree
方法 findtext('output')
(应该 return 文本在 <output></output>
标签中)时,returned 文本替换了行分隔符:
first line\n
second line\n
我必须把它们换回去,这很烦人。此行为是意外的。有没有人 运行 关注这个问题,你是如何处理的?
所有 XML 兼容的解析器 must convert CRLF line endings to LF。所以你不需要写 \r\n
.
我有一个用于测试的 XML 文件,我根据原始字符串测试原始字符串。我的测试文件包含以下数据:
<output>
first line\r\n
second line\r\n
</output>
我的待测函数returns:
first line\r\n
second line\r\n
但是,当我使用 xml.etree.ElementTree
方法 findtext('output')
(应该 return 文本在 <output></output>
标签中)时,returned 文本替换了行分隔符:
first line\n
second line\n
我必须把它们换回去,这很烦人。此行为是意外的。有没有人 运行 关注这个问题,你是如何处理的?
所有 XML 兼容的解析器 must convert CRLF line endings to LF。所以你不需要写 \r\n
.