1. 程式人生 > >JS 和 Java 中URL特殊字元編碼方式

JS 和 Java 中URL特殊字元編碼方式

 JavaScript

  1.  編碼 escape(String)

    其中某些字元被替換成了十六進位制的轉義序列。

   解碼 unescape(String)

    該函式的工作原理是這樣的:通過找到形式為 %xx 和 %uxxxx 的字元序列(x 表示十六進位制的數字),用 Unicode 字元 \u00xx 和 \uxxxx 替換這樣的字元序列進行解碼。

    *註釋:ECMAScript v3 反對使用該方法,應用使用 decodeURI() 和 decodeURIComponent() 替代它。

  2. 編碼 encodeURI(URIstring)

    返回值:URIstring 的副本,其中的某些字元將被十六進位制的轉義序列進行替換。

    *如果 URI 元件中含有分隔符,比如 ? 和 #,則應當使用 encodeURIComponent() 方法分別對各元件進行編碼。

   解碼 decodeURI(URIstring)

    返回值:URIstring 的副本,其中的十六進位制轉義序列將被它們表示的字元替換。

  3. 編碼 encodeURIComponent(URIstring)

    返回值:URIstring 的副本,其中的某些字元將被十六進位制的轉義序列進行替換。

   解碼 decodeURIComponent(URIstring)

    返回值:URIstring 的副本,其中的十六進位制轉義序列將被它們表示的字元替換。

  *encodeURIcomponent() 與 encodeURI() 區別

encodeURIComponent(URIstring) : 假定其引數是URI一部分(比如協議、主機名、路徑或查詢字串),因此 encodeURIComponent() 函式將轉義用於分隔 URI 各個部分的標點符號(? # 等)。

    encodeURI(URIstring) : 不會對URI中的分隔符編碼,如 ? # 等。

  Java

    編碼: Class URLEncoder

    static String encode(String s);
    static
String encode(String s, String enc);//enc 編碼方式 推薦使用UTF-8

    解碼: Class URLDecoder

    static String decode(String s);
    static String decode(String s, String enc);//enc 編碼方式 推薦使用UTF-8

     * Java中的編碼解碼方式和JS中的encodeURIComponent()/decodeURIComponent()方法是前後臺通用的;兩者在處理字串的方式是沒有區別的;

相關推薦

JS Java URL特殊字元編碼方式

 JavaScript   1.  編碼 escape(String)     其中某些字元被替換成了十六進位制的轉義序列。    解碼 unescape(String)     該函式的工作原理是這樣的:通過找到形式為 %xx 和 %uxxxx 的字元序列(x

jsjava字元unicode編碼的轉化

一般來說,良好的程式設計習慣要求在程式碼裡儘量不出現中文,一個是國際化問題,即同一份程式碼可能要滿足不同語言的顯示,還一個就是可能產生亂碼問題,不同的程式設計師用不同的IDE匯入這份程式碼可能使用了不同的預設編碼。 然而有些場景是必須保持中文的,比如讀取某個帶樣式文字的字型

JSJAVA常用的編碼轉碼函式

js中escape,encodeURI,encodeURIComponent函式和unescape,decodeURI和decodeURIComponent函式的功能1.escape方法對String物件編碼,escape方法返回一個包含了"轉義序列"的字串值。除了ASCII

jsjava使用正則表達式校驗郵箱

reg 表達 mat 表達式 正則表達式 javascrip 格式 正則 pri 問題:經常在項目中要校驗郵箱?   郵箱格式:首位必須為字母,必須包含一個@符號,並且@之後有個名字,之後還有個.,再有一個後綴名   例如:[email protected]   一、java

jsjava的AES加密解密

每次都要在這個問題上耗費一天的時間,所以這次留下記錄免得以後麻煩。 JS端使用CryptoJS,服務端bouncy castle提供的AES演算法。 AES演算法採用“AES/CBC/PKCS7Padding”,這個在JS和JAVA中都支援。Java預設的加

json在jsjava的使用

在程式語言中,只要有了陣列(array)和物件(object)就能夠儲存一切資料,同時在不同的語言之間進行資料交換的時候,傾向於使用字串,因為字串在各個語言中的處理方式大致相同,那麼JSON的誕生也就在情理之中了。 JSON的優勢在於: (1).JSON是純文字格式,是獨

jsjava陣列的區別定義方式

區別:java中:定義陣列必須指定長度,而且長度確定下來之後無法改變。            js中:js中的陣列和java中的集合差不多,長度是可變的,也沒有強制要求必須定義長度。 定義方法:java: int a[] = new int[3];//定義一個新陣列

Java特殊字元的轉義問題

1 頁面顯示時,後臺準備資料要轉義的字元: >  <  "  '  & public static String html(String key) {if (null != key) {/** 特殊字元處理:* > &gt;   <

JAVA清除特殊字元

正則表示式用於字串處理、表單驗證等場合,實用高效。現將一些常用的表示式收集於此,以備不時之需。  匹配中文字元的正則表示式: [\u4e00-\u9fa5]  評註:匹配中文還真是個頭疼的事,有了這個表示式就好辦了  匹配雙位元組字元(包括漢字在內):[^\x00-\xff]  評註:可以用來計算字串的長度(

jsjava日期日期字串的相互轉換使用

摘要:在工作中只要牽扯到日期,很大可能都會牽扯到日期的計算格式的轉換等用法,這篇文章就是要探討一下平常在 js和java中對於日期的使用。 js中日期的使用 js中日期的計算 和 比較 js中兩個日期字串的計算 ###########

字元編碼Java的亂碼問題

ASCII碼   在計算機內部,所有的資訊最終都表示為一堆二進位制形式的資料。每一個二進位制位(bit)有0和1兩種狀態,因此八個二進位制位就可以組合出256種狀態,稱為一個位元組(byte),從0000000到11111111。上世紀60年代,美國製定了一套字元編碼,

java處理url特殊字元%等

java處理url中的特殊字元(如&,%...) URL(Uniform Resoure Locator,統一資源定位器)是Internet中對資源進行統一定位和管理的標誌。一個完整的URL包括如下內容:1.       &

JAVA如何處理URL特殊字元

方法1: String str="http://www.baidu.com/api/?action=s2s_install&a={appsunion}&b=3&c=30029

JSURL特殊字元問題:escape,encodeURI,encodeURIComponent

URI 編碼方法 Global 物件的 encodeURI()和encodeURIComponent()方法可以對URI(Uniform ResourceIdentifiers,通用資源識別符號)進行編碼,以便傳送給瀏覽器。有效的URI中不能包含某些字元,例如空格。而這兩

URL編碼URL特殊字元

一、問題的由來   問題:當url地址中包含&、+、%等特殊字元(主要是傳遞引數時,引數的內容中包含這些字元)時,地址無效。比如http://10.190.0.0:108/doc/test+desc2.bmp,若檔名中出現+/&等特殊字元,後臺會報404的錯誤,即web伺服器找不到頁面或者資源

JAVAurl特殊字元處理及url轉碼解碼

在url中 , 只能使用url合法的字元 . 如果使用了非法字元來訪問某資源(如:+#等) , 就會導致資源訪問異常或失敗 . 同時原生url中也是不支援中文的 , 以百度為例 , 當你搜索了中文關鍵詞時 , 可以在url位址列中明顯的看出來中文被"編碼轉換了" . 本章暫

URLEncoderURLDecoder;cookie儲存特殊字元以及URL亂碼問題解決方案

cookie的特殊字元的編碼和解碼來解決亂碼問題;   編碼: protected void doGet(HttpServletRequest request, HttpServletRespo

TomcatURL對於特殊字元編碼問題

URL中有特殊字元如大括號{},^等tomcat會返回400錯誤 java.lang.IllegalArgumentException: Invalid character found in the

js過濾url特殊字元

在URL傳遞引數中,有一些特殊字元,而這些些符號在URL中是不能直接傳遞的,如果要在URL中傳遞這些特殊符號,那麼就要使用他們的編碼了。 下表中列出了一些URL特殊符號及編碼十六進位制值 1. + URL 中+號表示空格 %2B 2. 空格 URL中的空格可以用+號或者

Java 如何進行 BASE64 編碼解碼

解碼 clas nal upd getch 根據 數組 格式 並且 BASE64 編碼是一種常用的字符編碼,在很多地方都會用到。JDK 中提供了非常方便的 BASE64Encoder 和 BASE64Decoder,用它們可以非常方便的完成基於 BASE64 的編碼和解碼。