In Java-based programming, we often encounter problems with the processing and display of Chinese characters, such as a lot of garbled characters or question marks.
This is because the default encoding method in JAVA is UNICODE, and the files and DBs commonly used by Chinese people are based on encodings such as GB2312 or BIG5, so this problem occurs.
Recommended: java basic tutorial
1. Output Chinese on the web page.
The encoding used by JAVA in network transmission is "ISO-8859-1", so it needs to be converted when outputting, such as:
String str="中文"; str=new String(str.getBytes("GB2312"),"8859_1");
But if when compiling the program, The encoding used is "GB2312", and if you run this program on a Chinese platform, this problem will not occur, so be sure to pay attention.
2. Reading Chinese from parameters is just the opposite of outputting in a web page, such as:
str=new String(str.getBytes("8859_1"),"GB2312");
3. A relatively complex problem with Chinese in operating DB The simple method is: In the "Control Panel", set the "Region" to "English (United States)".
If garbled characters still appear, you can also make the following settings:
When fetching Chinese:
str=new String(str.getBytes("GB2312"));
Input Chinese into DB:
str=new String(str.getBytes("ISO-8859-1"));
4. Chinese solution in jsp:
In the "Control Panel", set the "Region" to "English (United States)".
In the JSP page Add: If it still cannot be displayed normally,
will need to be converted as follows: For example:
name=new String(name.getBytes("ISO-8859-1"),"GBK");
then there will be no Chinese problem.
The above is the detailed content of Reasons and solutions for garbled Chinese characters in Java. For more information, please follow other related articles on the PHP Chinese website!