如何在 Java 中從 URI 查詢字串中提取名稱-值對?
使用Java 從URI 提取嵌入資料
將URI 字串解析為其對應的名稱-值對是許多Web 開發中的常見任務場景。在 Java 中,您可以透過應用簡單的方法來實現此操作,而無需依賴外部程式庫。
逐步指南:
-
分割URI 查詢字串:
使用URL.getQuery() 方法,取得URI查詢字串部分URI。查詢字串是問號(?)後面的部分,包含由與號(&)字元分隔的鍵值對。 -
單獨的鍵值對:
分割使用 String.split("&") 方法將查詢字串分解為單獨的鍵值對。 -
解析鍵值對:
對於每個鍵值對,找到等號 (=) 以將鍵與值分開。使用合適的編碼對鍵和值進行解碼,例如 URLDecoder.decode()。 -
建構名稱-值集合:
建立一個映射資料結構來儲存解析後的鍵-值對。
範例實作:
下面的Java 程式碼示範如何實作上述步驟:
import java.net.URL; import java.net.URLDecoder; import java.util.LinkedHashMap; import java.util.Map; public class ParseUriQuery { public static Map<String, String> splitQuery(URL url) throws UnsupportedEncodingException { Map<String, String> queryPairs = new LinkedHashMap<>(); String query = url.getQuery(); String[] pairs = query.split("&"); for (String pair : pairs) { int idx = pair.indexOf("="); queryPairs.put(URLDecoder.decode(pair.substring(0, idx), "UTF-8"), URLDecoder.decode(pair.substring(idx + 1), "UTF-8")); } return queryPairs; } }
範例用法:
解析您問題中提供的URI,您可以使用以下程式碼:
URL url = new URL("https://google.com.ua/oauth/authorize?client_id=SS&response_type=code&scope=N_FULL&access_type=offline&redirect_uri=http://localhost/Callback"); Map<String, String> queryPairs = ParseUriQuery.splitQuery(url); // Access parsed elements String clientId = queryPairs.get("client_id"); // Returns "SS"
此方法提供了在 Java 中提取嵌入在 URI 查詢字串中的資訊的便捷且通用的方法。
以上是如何在 Java 中從 URI 查詢字串中提取名稱-值對?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

公司安全軟件導致部分應用無法正常運行的排查與解決方法許多公司為了保障內部網絡安全,會部署安全軟件。 ...

系統對接中的字段映射處理在進行系統對接時,常常會遇到一個棘手的問題:如何將A系統的接口字段有效地映�...

在使用MyBatis-Plus或其他ORM框架進行數據庫操作時,經常需要根據實體類的屬性名構造查詢條件。如果每次都手動...

將姓名轉換為數字以實現排序的解決方案在許多應用場景中,用戶可能需要在群組中進行排序,尤其是在一個用...

在使用IntelliJIDEAUltimate版本啟動Spring...

Java對象與數組的轉換:深入探討強制類型轉換的風險與正確方法很多Java初學者會遇到將一個對象轉換成數組的�...

電商平台SKU和SPU表設計詳解本文將探討電商平台中SKU和SPU的數據庫設計問題,特別是如何處理用戶自定義銷售屬...

在使用TKMyBatis進行數據庫查詢時,如何優雅地獲取實體類變量名以構建查詢條件,是一個常見的難題。本文將針...
