【发布时间】:2017-04-08 22:41:11
【问题描述】:
我需要读入一个不符合 xml 规则的 xml 文件。所以我需要在我可以将它作为 xml 文件读取之前把它做好。它在元素之间存在诸如“&”和“
<MAT>
<MATERIAL><MATNR>2286303</MATNR><BESTELTXT>Parts for something & something else</BESTELTXT><WERKS>Material exist out of<1 something</WERKS>
</MAT>
现在我有这个:
我读入文件然后我这样做
text = Regex.Replace(text, @"\s&\s", " & ");
text = Regex.Replace(text, @"[<]\d+", "<");
之后我将文本写入文件,然后我将其作为 xml 读入。
“
ps:我知道这应该在制作 xml 文件时进行处理,但它来自第三方,他们无法更改。
【问题讨论】:
-
他们不能改变吗?然后更改该供应商
-
他们没有为你提供一个有效的 XML 文件,你不能指望把它当作一个来阅读。
-
@Thomas 是的,这很有趣,但通常这不是开发人员的决定权。
-
@Jamiec 我必须同意你的观点,但我们别无选择,所以就像 CodeCaster 说的那样,这不是我决定的地方。我问过他们并让他们知道,但答案是不可能,所以我坚持下去。
-
@BramV 看到我 100% 不同意编解码器。 是开发者 IMO 的责任。如果我有报酬成为一名开发人员,那么有人会为我的知识和经验买单。如果这告诉我他们正在使用一个糟糕的供应商,那么该死的,我会向付钱给我的人说清楚。