我需要讀取不符合xml規則的xml文件。所以我需要把它作爲一個XML文件閱讀之前。它在元素之間存在諸如「&」和「<」之類的符號。C#從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。
「<」的問題是,它將刪除號碼,我需要保留。另外我不知道這是否有很好的表現?這也將工作與verry大文件?它也只適用於這種情況,但如果我們在未來有更多案例呢?沒有將這些預定義實體更改爲其xml格式的一般方法嗎?
ps:我知道這應該在xml文件被處理時處理,但它來自一個thirth派對,他們不能改變它。
他們不能改變呢?然後改變那個供應商 –
他們沒有提供給你一個有效的XML文件,你不能指望它是一個整體。 – Jamiec
@Thomas是的,這很有趣,但通常情況下,開發人員不是這樣做的。 – CodeCaster