带é(急性)的网址

时间:2015-06-04 16:34:34

标签: android uri httpurlconnection urlencode

我的网址格式有问题。我想从网址发出一个get请求: 'http://www.radiobébé.com/ titre.txt'(http://www.radiobebe.com/titre.txt不存在)

String responseBody = "";

    try {
        URL u = new URL("http://www.radiobébé.com/titre.txt");
        HttpURLConnection urlConnection = (HttpURLConnection) u
                .openConnection();

        urlConnection.setRequestMethod("GET");

        urlConnection.connect();

        int statusCode = urlConnection.getResponseCode();

        if (statusCode == HttpURLConnection.HTTP_OK) {
            responseBody = urlConnection.getInputStream().toString();
        }
    } catch (IOException e) {
        Log.e("RadioBébé", "failed to get song title : " + e.toString());
    }

使用此函数,我获得错误'java.net.UnknownHostException'

我试过了:

String url = "http://www." + URLencoder.encoder("radiobébé", "UTF-8") + ".com/titre.txt";

Uri.Builder builder = new Uri.Builder();
builder.scheme("http")
    .authority("www.radiobébé.com")
    .appendPath("titre.txt");

同样的问题....(主机可能不为空)

你知道我该怎么办呢?

2 个答案:

答案 0 :(得分:1)

试试这个网址:http://www.xn--radiobb-gyab.com/titre.txt

当我在浏览器中检查连接时,这不是http://www.radiobébé.com/ titre.txt但是这个网址。

答案 1 :(得分:1)

我找到了解决方案,我们可以使用IDN:

String url = IDN.toASCII("http://www.radiobébé.com/titre.txt");

结果:

url = http://www.xn--radiobb-gyab.com/titre.txt