Reputation: 697
I want to convert a java string that contains UTF-8 characters to a format that a browser can use( the string will be used as URL ) What exactly I mean is that url.openStream() cannot open a webpage, when url contains Persian letters.
Upvotes: 1
Views: 549
Reputation: 234857
Java String
s do not contain UTF-8 characters. From the docs for Character:
The Java 2 platform uses the UTF-16 representation in char arrays and in the String and StringBuffer classes.
You can use the URLEncoder class to encode a string so that url.openStream()
works.
Upvotes: 1
Reputation: 360046
You need to percent-encode the non-ASCII characters in the URL.
See how to encode URL to avoid special characters in java and URLEncoder#encode(String, String)
.
Upvotes: 1