Home > Java > JavaBase > body text

java string garbled characters

angryTom
Release: 2019-11-18 10:22:39
Original
4108 people have browsed it

java string garbled characters

java string garbled characters

The problem lies in the inconsistent system encoding methods of pre-release, production and local environments. The system default is UTF-8, while the default encoding for pre-release and production environments is GBK, resulting in garbled characters.

If the encoding method is not specified, the system encoding method will be used by default.

String csn = Charset.defaultCharset().name();
try {
    // use charset name decode() variant which provides caching.
    return decode(csn, ba, off, len);
} catch (UnsupportedEncodingException x) {
    warnUnsupportedCharset(csn);
}
try {
    return decode("ISO-8859-1", ba, off, len);
} catch (UnsupportedEncodingException x) {
    // If this code is hit during VM initialization, MessageUtils is
    // the only way we will be able to get any kind of error message.
    MessageUtils.err("ISO-8859-1 charset not available: " +
        x.toString());
    // If we can not find ISO-8859-1 (a required encoding) then things
    // are seriously wrong with the installation.
    System.exit(1);
    return null;
}
System.getProperty("file.encoding") //查看系统默认编码方式
Copy after login

The solution is as follows:

1. Transcode when using string

System.out.println(str);
String str1 = new String(str.getBytes("ISO-8859-1"), "utf-8");
System.out.println(str1);
String str2 = new String(str.getBytes("gb2312"), "utf-8");
System.out.println(str2);
String str3 = new String(str.getBytes("gbk"), "utf-8");
System.out.println(str3);
Copy after login

2. Transcoding garbled strings

String decodeStr=null;
decodeStr = URLDecoder.decode(url, "utf-8");
Copy after login

Therefore, when using String, the encoding method must be specified regardless of encode or decode, otherwise it will be coupled with the system environment.

php Chinese website, a large number of free Java introductory tutorials, welcome to learn online!

The above is the detailed content of java string garbled characters. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!