public class CharsetUtil extends Object
Modifier and Type | Field and Description |
---|---|
static Charset |
CHARSET_GBK
GBK
|
static Charset |
CHARSET_ISO_8859_1
ISO-8859-1
|
static Charset |
CHARSET_UTF_8
UTF-8
|
static String |
GBK
GBK
|
static String |
ISO_8859_1
ISO-8859-1
|
static String |
UTF_8
UTF-8
|
Constructor and Description |
---|
CharsetUtil() |
Modifier and Type | Method and Description |
---|---|
static Charset |
charset(String charsetName)
转换为Charset对象
|
static File |
convert(File file,
Charset srcCharset,
Charset destCharset)
转换文件编码
此方法用于转换文件编码,读取的文件实际编码必须与指定的srcCharset编码一致,否则导致乱码 |
static String |
convert(String source,
Charset srcCharset,
Charset destCharset)
转换字符串的字符集编码
当以错误的编码读取为字符串时,打印字符串将出现乱码。 |
static String |
convert(String source,
String srcCharset,
String destCharset)
转换字符串的字符集编码
|
static Charset |
defaultCharset()
系统默认字符集编码
|
static Charset |
defaultCharset(InputStream in,
Charset... charsets)
探测编码
注意:此方法会读取流的一部分,然后关闭流,如重复使用流,请使用使用支持reset方法的流 |
static Charset |
defaultCharset(int bufferSize,
InputStream in,
Charset... charsets)
探测编码
注意:此方法会读取流的一部分,然后关闭流,如重复使用流,请使用使用支持reset方法的流 |
static String |
defaultCharsetName()
系统默认字符集编码
|
static Charset |
parse(String charsetName)
解析字符串编码为Charset对象,解析失败返回系统默认编码
|
static Charset |
parse(String charsetName,
Charset defaultCharset)
解析字符串编码为Charset对象,解析失败返回默认编码
|
static Charset |
systemCharset()
系统字符集编码,如果是Windows,则默认为GBK编码,否则取
defaultCharsetName() |
static String |
systemCharsetName()
系统字符集编码,如果是Windows,则默认为GBK编码,否则取
defaultCharsetName() |
public static final String ISO_8859_1
public static final String UTF_8
public static final String GBK
public static final Charset CHARSET_ISO_8859_1
public static final Charset CHARSET_UTF_8
public static final Charset CHARSET_GBK
public static Charset charset(String charsetName) throws UnsupportedCharsetException
charsetName
- 字符集,为空则返回默认字符集UnsupportedCharsetException
- 编码不支持public static Charset parse(String charsetName)
charsetName
- 字符集,为空则返回默认字符集public static Charset parse(String charsetName, Charset defaultCharset)
charsetName
- 字符集,为空则返回默认字符集defaultCharset
- 解析失败使用的默认编码public static String convert(String source, String srcCharset, String destCharset)
source
- 字符串srcCharset
- 源字符集,默认ISO-8859-1destCharset
- 目标字符集,默认UTF-8public static String convert(String source, Charset srcCharset, Charset destCharset)
客户端 -》 GBK编码 -》 Servlet容器 -》 UTF-8解码 -》 乱码 乱码 -》 UTF-8编码 -》 GBK解码 -》 正确内容
source
- 字符串srcCharset
- 源字符集,默认ISO-8859-1destCharset
- 目标字符集,默认UTF-8public static File convert(File file, Charset srcCharset, Charset destCharset)
file
- 文件srcCharset
- 原文件的编码,必须与文件内容的编码保持一致destCharset
- 转码后的编码public static String systemCharsetName()
defaultCharsetName()
defaultCharsetName()
public static Charset systemCharset()
defaultCharsetName()
defaultCharsetName()
public static String defaultCharsetName()
public static Charset defaultCharset()
public static Charset defaultCharset(InputStream in, Charset... charsets)
in
- 流,使用后关闭此流charsets
- 需要测试用的编码,null或空使用默认的编码数组CharsetDetector.detect(InputStream, Charset...)
public static Charset defaultCharset(int bufferSize, InputStream in, Charset... charsets)
bufferSize
- 自定义缓存大小,即每次检查的长度in
- 流,使用后关闭此流charsets
- 需要测试用的编码,null或空使用默认的编码数组CharsetDetector.detect(int, InputStream, Charset...)
Copyright © 2024. All rights reserved.