[英]do we need to escape the character '<'
在C#ASP.NET中,如果我們在字符串中包含字符<或>。 我們是否需要像這樣逃避它:
string a = "\\<test\\>abcdef\\</test\\>"
因為此字符串將通過webservices發送到外部方法。 並以該方法將其轉換為某種xml文件。
contentHtml = "<?xml version=\"1.0\" encoding=\"utf-16\"?>" + contentHtml;
content_ws.AddContent(contentHtml);
//AddContent() method is a external method (via webservices)
例如,ô現在轉換為ô。 但是我無法訪問de Web Service中的代碼
尋求幫助
不,您不需要轉義這些字符。 是什么阻止了您自己嘗試此操作?
更新
根據您的進一步信息,我想說這取決於Web服務的期望。 Web服務很可能將對傳入的字符串數據進行編碼。 你有嘗試過嗎? 您目前的結果是什么?
不。 <
和>
不需要轉義。 您唯一需要轉義<
和>
的時候就是將字符串表示為XML內的數據時,在這種情況下<
必須為<
並且>
必須為>
。
編輯:
對於asp.net
您可以使用
string a = "<test>abcdef</test>";
string encodedXml = HttpUtility.HtmlEncode(a);
我相信不需要轉義字符。 看看這個MSDN鏈接
在發送前,請確保該字符串以UTF-16(似乎是您正在使用的字符串)進行編碼!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.