如何将字符串转换为Java (Android)的Uri ?例如:
String myUrl = "http://stackoverflow.com";
myUri = ??;
如何将字符串转换为Java (Android)的Uri ?例如:
String myUrl = "http://stackoverflow.com";
myUri = ??;
当前回答
import java.net.URI;
以下也适用于我:
URI uri = URI.create("http://stackoverflow.com");
OR
URI uri = new URI("http://stackoverflow.com");
其他回答
我只是使用java.net包。 在这里你可以做以下事情:
...
import java.net.URI;
...
String myUrl = "http://stackoverflow.com";
URI myURI = new URI(myUrl);
如果URI没有完全按照标准编码,Java在java.net.URI中的解析器将会失败。例如,尝试解析:http://www.google.com/search?q=cat|dog。垂直栏将引发异常。
urllib使得将字符串转换为java.net.URI变得很容易。它将对URL进行预处理并转义。
assertEquals("http://www.google.com/search?q=cat%7Cdog",
Urls.createURI("http://www.google.com/search?q=cat|dog").toString());
你要对URI做什么?
例如,如果你只是将它与HttpGet一起使用,你可以在创建HttpGet实例时直接使用字符串。
HttpGet get = new HttpGet("http://stackoverflow.com");
可以使用Uri中的解析静态方法
//...
import android.net.Uri;
//...
Uri myUri = Uri.parse("http://stackoverflow.com")
import java.net.URI;
以下也适用于我:
URI uri = URI.create("http://stackoverflow.com");
OR
URI uri = new URI("http://stackoverflow.com");