2016-03-30 93 views
1

這是一個網頁十六進制值0X03是無效字符

<html lang="pl"> 
<head> 
<meta http-equiv="content-type" content="text/html;charset=utf-8" /> 
</head> 

<body> 
<p>Da&#32;brow&#35;a G�rn&#x3;icza<p> 

</body> 

</html> 

我需要瀏覽該頁面,然後複製出

the text to be copied

後,該文本的來源,我有將此文本粘貼到一個asp.net mvc應用程序的輸入文本框中,以便爲數據庫創建新記錄。 佈局頁面的元字符集是「UTF-8」

如果我去到Visual Studio 2013中調試,執行控制器的創建操作時,我可以看到下面的字符串

this is the address in debug mode

該地址已經存儲到類型爲nvarchar(255)的柱,並從SQL管理工具我看到相同的文本之前所看到:

this is the address from the database

我F I複製和粘貼數據庫列到記事本地址++,我可以看到 enter image description here

之後,我必須按順序發送地址數據調用SVC服務,但我從對方收到這個異常

錯誤轉換XML''HEXADECIMAL VALUE 0X03是無效的 字符。

如何避免此異常被拋出?

回答

1

0x03根本不是allowed character in XML

[2] Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] 

因此您的文本對象不是XML,任何符合的XML處理器必須報告錯誤,如你收到的一個。

您必須使用它與任何XML庫之前手動或自動把它當作文本,而不是XML,修復數據。

+0

你的意思是? – Lluthus

+0

'0x03'是'^ C'又名'ETX'(傳輸結束)。考慮完全刪除它。 – kjhughes

相關問題