2015-04-05 24 views
1

我應該解析值的URL,但是當我給如何解析URL中的Android

private static String url = "http://54.174.74.84/api/index/index?data={%20%22language_code%22:%22en_us%22,%20%22cmd%22:%22search_projects%22,%20%22user_device_id%22:319,%20%22page%22:0,%20%22user_token%22:%22edeN2y0EuakoD2deWGzijeuBQ5HRnhokyAqV4WIHzZz5PM0Qn2xgopKiAcboNJktgXeQMsX7kZmDW3T5Tta3i+Fz1mU5p1yTP1L3m\/OTGkOlDoJrLn6\/+I3rBqESDtFH%22,%20%22source_app%22:%22android%22,%20%22longitude%22:%22567%22,%20%22user_id%22:67,%20%22latitude%22:%22123%22,%20%22records_per_page%22:%2210%22,%20%22search_key%22:%22%22%20}"; 

這樣它顯示錯誤。所以請幫助我。謝謝。

+0

它會顯示什麼錯誤? – ByteHamster 2015-04-05 10:28:55

+0

無效的轉義序列(有效的轉義序列是\ b \ t \ n \ f \ r \「\'\\) – user3693338 2015-04-05 10:31:43

+0

搜索URL編碼器 – 2015-04-05 10:56:32

回答

0

您需要使用Uri類:

String uri = Uri.parse("http://54.174.74.84/api/index/index") 
      .buildUpon() 
      .appendQueryParameter("data", "{%20%22language_ ..... %22%22%20}") 
      .appendQueryParameter("param2", value2) 
      .appendQueryParameter("param3", value3) 
      .build().toString(); 
+0

tnx.i將嘗試回來ü – user3693338 2015-04-05 11:24:56

+0

tnx它工作正常 – user3693338 2015-04-05 11:26:41

+0

嗨,我有不同鍵應該在java文件中註冊所有密鑰??? – user3693338 2015-04-05 15:02:39

1

這是不是一個錯誤。用java編碼器類進行字符串編碼。你必須在使用它之前解碼字符串,就像下面的代碼一樣...

String url = "http://54.174.74.84/api/index/index?data={%20%22language_code%22:%22en_us%22,%20%22cmd%22:%22search_projects%22,%20%22user_device_id%22:319,%20%22page%22:0,%20%22user_token%22:%22edeN2y0EuakoD2deWGzijeuBQ5HRnhokyAqV4WIHzZz5PM0Qn2xgopKiAcboNJktgXeQMsX7kZmDW3T5Tta3i+Fz1mU5p1yTP1L3m/OTGkOlDoJrLn6/+I3rBqESDtFH%22,%20%22source_app%22:%22android%22,%20%22longitude%22:%22567%22,%20%22user_id%22:67,%20%22latitude%22:%22123%22,%20%22records_per_page%22:%2210%22,%20%22search_key%22:%22%22%20}"; 

String result = java.net.URLDecoder.decode(url, "UTF-8"); 
+0

tnx您的回覆 – user3693338 2015-04-05 11:48:01