0
那麼,我有一個VB.net代碼,它從一些XML fiels中獲得值,沒有問題,問題是有時值有不同的格式,點之後,所以當我嘗試將該值轉換爲一個數字,我得到一個錯誤的值。從XML獲取十進制值
我的代碼來獲取領域:
qntXml As XmlNodeList = docXml.GetElementsByTagName("qCom")
qnt = Convert.ToDecimal(quantidadeXml(0).InnerText)
我用100分的「QNT」領域,以獲得正確的值,但它不工作了,因爲你可以看到下面
<qCom>380.00</qCom>
<qCom>170.0000</qCom>
我得到「完整」數字,例如38000,而我應該得到380,00。
如果有人有一個想法如何用C#解決它也沒有問題。
此無關的XML。你正試圖用默認語言環境解析一個十進制數,這顯然使用'.'作爲千位分隔符。不要使用Convert.ToDecimal,而要在InvariantCultureInfo中使用'decimal.Parse',例如'decimal.Parse(someText,CultureInfo.InvariantCulture)' –