Reading InputStream as UTF-8 Reading InputStream as UTF-8 java java

Reading InputStream as UTF-8


Solved my own problem. This line:

BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));

needs to be:

BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream(), "UTF-8"));

or since Java 7:

BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream(), StandardCharsets.UTF_8));


String file = "";try {    InputStream is = new FileInputStream(filename);    String UTF8 = "utf8";    int BUFFER_SIZE = 8192;    BufferedReader br = new BufferedReader(new InputStreamReader(is,            UTF8), BUFFER_SIZE);    String str;    while ((str = br.readLine()) != null) {        file += str;    }} catch (Exception e) {}

Try this,.. :-)


I ran into the same problem every time it finds a special character marks it as ��. to solve this, I tried using the encoding: ISO-8859-1

BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("txtPath"),"ISO-8859-1"));while ((line = br.readLine()) != null) {}

I hope this can help anyone who sees this post.