1. 程式人生 > >中文亂碼解決之一 JS的編碼、解碼及C#中對應的解碼、編碼

中文亂碼解決之一 JS的編碼、解碼及C#中對應的解碼、編碼

JS的編碼、解碼及C#中對應的解碼、編碼

1、escape

定義和用法

escape對字串資料編碼,如果是對url進行編碼必須用encodeURI或是encodeURLComponent,解碼使用:unescape。

返回值

字符集是unicode,編碼成16進位制。

說明

不編碼字元有69個:
特殊符號:* + - . / @ _ 
數字及字母:0-9,a-z,A-Z

C#:

在專案中引用.net元件"Microsoft.Jscript" Microsoft.JScript.GlobalObject類中有與JS對應編碼/解碼函式Microsoft.JScript.GlobalObject.escape

2、encodeURI

定義和用法

encodeURI對整個url編碼,如果url引數中有特殊字元如“#”,“$”,"&"等字元用encodeURIComponent,因為url中的引數分隔符"&"會被編碼,解碼使用decodeURI()。

返回值

UTF-8編碼格式,編碼成16進位制

說明

不編碼字元有82個:
特殊符號:! # $ & ' ( ) * + , - . / : ; = ? @ _ ~ 
數字及字母:0-9,a-z,A-Z

C#:

在專案中引用.net元件"Microsoft.Jscript" Microsoft.JScript.GlobalObject類中有與JS對應編碼/解碼函式Microsoft.JScript.GlobalObject.encodeURI

 

3、encodeURIComponent

定義和用法

encodeURIComponent對url的引數值進行編碼,如果url中有“#”,“$”,"&"等字元encodeURI不會編碼,所有有特殊字元必須用encodeURIComponent,解碼使用decodeURIComponent()。

返回值

UTF-8編碼格式,編碼成16進位制

說明

不編碼字元有71個:
特殊符號:! ' ( ) * - . _ ~
數字及字母:0-9,a-z,A-Z


C#:

在專案中引用.net元件"Microsoft.Jscript" Microsoft.JScript.GlobalObject類中有與JS對應編碼/解碼函式Microsoft.JScript.GlobalObject.encodeURIComponent

1、escape

定義和用法

escape對字串資料編碼,如果是對url進行編碼必須用encodeURI或是encodeURLComponent,解碼使用:unescape。

返回值

字符集是unicode,編碼成16進位制。

說明

不編碼字元有69個:
特殊符號:* + - . / @ _ 
數字及字母:0-9,a-z,A-Z

C#:

在專案中引用.net元件"Microsoft.Jscript" Microsoft.JScript.GlobalObject類中有與JS對應編碼/解碼函式Microsoft.JScript.GlobalObject.escape

2、encodeURI

定義和用法

encodeURI對整個url編碼,如果url引數中有特殊字元如“#”,“$”,"&"等字元用encodeURIComponent,因為url中的引數分隔符"&"會被編碼,解碼使用decodeURI()。

返回值

UTF-8編碼格式,編碼成16進位制

說明

不編碼字元有82個:
特殊符號:! # $ & ' ( ) * + , - . / : ; = ? @ _ ~ 
數字及字母:0-9,a-z,A-Z

C#:

在專案中引用.net元件"Microsoft.Jscript" Microsoft.JScript.GlobalObject類中有與JS對應編碼/解碼函式Microsoft.JScript.GlobalObject.encodeURI

 

3、encodeURIComponent

定義和用法

encodeURIComponent對url的引數值進行編碼,如果url中有“#”,“$”,"&"等字元encodeURI不會編碼,所有有特殊字元必須用encodeURIComponent,解碼使用decodeURIComponent()。

返回值

UTF-8編碼格式,編碼成16進位制

說明

不編碼字元有71個:
特殊符號:! ' ( ) * - . _ ~
數字及字母:0-9,a-z,A-Z


C#:

在專案中引用.net元件"Microsoft.Jscript" Microsoft.JScript.GlobalObject類中有與JS對應編碼/解碼函式Microsoft.JScript.GlobalObject.encodeURIComponent