[英]VB.NET Trim does not work on XML InnerText that contains a vbLf?
如果我采用以下XML:
<security>
<user>user</user>
<password>pass </password>
</security>
並在密碼節點的InnerText
上調用Trim()
方法,它正確地Trim()
它,但如果我將片段修改為如下所示:
<security>
<user>user</user>
<password>pass
我無法使Trim()
方法起作用,刪除的空格pass
返回為pass
(它在末尾有一個空格)。 我查看了監視窗口,當我點擊該值時,它顯示為:
"pass" & vbLf & ""
String.Trim方法永遠不會刪除換行符。 它只刪除空格。 如果您想刪除所有換行符,您可以執行以下操作:
InnterText.Replace(Environment.NewLine, "").Trim()
但是,這將刪除文本開頭或中間的任何換行符。 但是,無論如何,也許這就是你想要的。
或者,您可以使用Trim的重載來傳遞要刪除的字符數組(但它只會從開頭和結尾刪除,而不是從中間刪除):
InnterText.Trim(Environment.NewLine.ToCharArray()).Trim()
根據定義,根據Char.IsWhiteSpace的頁面,換行符,制表符和回車符都是空格字符。 它還有一個警告,即此函數返回true並不意味着它將被Trim刪除。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.