1

我正在使用 xml 文件来存储软件的配置。

这些配置之一将是系统路径,例如

> set_value = "c:\\test\\3 tests\\test"

我可以使用以下方法存储它:

> setting = etree.SubElement(settings,
> "setting", name=tmp_set_name, type =
> set_type , value= set_value)

如果我使用

doc.write(output_file, method='xml',encoding = 'utf-8', compression=0)

该文件将是:

<setting type="str" name="MyPath" value="c:\test\3 tests\test"/>

现在我用 etree.parse 方法再次阅读它

我获得了一个带有字符串值的 etree 子对象,但该字符串包含

\3

字符,如果我尝试使用它再次写入 xml,它将被解释!!!!!!!所以我不能再将它用作路径也许我只是缺少一个简单的字符串操作,但我看不到它=)您将如何以聪明的方式解决它?

这是一个示例,但是最好的方法是什么,您认为将路径存储在 xml 中并使用 lxml 解析它们?

谢谢 !!

4

1 回答 1

1

现在我用 etree.parse 方法再次阅读它

我获得了一个带有字符串值的 etree 子对象,但该字符串包含

\3

字符,如果我尝试使用它再次写入 xml,它将被解释!!!!!!!

我只是尝试过,它没有得到“解释”。解析后返回的元素属性为:

{'type': 'str', 'name': 'yowza!', 'value': 'c:\\test\\3 tests\\test'}

因此,正如您所见,它的工作方式与您预期的一样。如果你真的有这个问题,那么你正在做的不是你所说的。向我们展示真实的代码,或者制作一个小示例代码来演示问题并使用它。

于 2010-01-22T10:00:12.767 回答