簡體   English   中英

使用Uri.builder構建URL

[英]Building URL using Uri.builder

這是我要構建的URLhttps : //image.tmdb.org/t/p/w185//nrsx0jEaBgXq4PWo7SooSnYJTv.jpg

 public static URL buildImageURL(String query){
    final String Image_Base_URL="image.tmdb.org";
    final String File_Size="w185";

    Uri.Builder builtUri = new Uri.Builder();
    builtUri.scheme("https")
            .authority(Image_Base_URL)
            .appendPath("t")
            .appendPath("p")
            .appendPath(File_Size).appendPath(query).build();
    URL url = null;
    try{
        url = new URL(builtUri.toString());
    }catch (MalformedURLException e){
        e.printStackTrace();
    }
return url;
}

我無法在網址中加上//

如果您知道自己的網址並需要Uri,請使用

Uri uri =  Uri.parse( "http://www.facebook.com" );

如果要編寫Uri並獲取正確的Url,請按以下方式使用:

final static String Image_Base_URL="image.tmdb.org";
private static final String File_Size="w185";

public static String buildImageURL(String query){
    // https://image.tmdb.org/t/p/w185//nrsx0jEaBgXq4PWo7SooSnYJTv.jpg
    String image = "nrsx0jEaBgXq4PWo7SooSnYJTv.jpg";

    Uri.Builder builder = new Uri.Builder();
    builder.scheme("https")
            .authority(Image_Base_URL)
            .appendPath("t")
            .appendPath("p")
            .appendPath(File_Size)
            .appendPath(image);
    String myUrl = builder.build().toString();

    return myUrl;
}

我已經修改了您的代碼,並進行了測試。 現在,它輸出正確格式的URL作為字符串。 您可以使用以下網址獲取網址

URL myURL = new URL(urlString);

輸出為: https://image.tmdb.org/t/p/w185/nrsx0jEaBgXq4PWo7SooSnYJTv.jpg : https://image.tmdb.org/t/p/w185/nrsx0jEaBgXq4PWo7SooSnYJTv.jpg

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM