Class Charset

java.lang.Object
org.aoju.bus.core.lang.Charset

public class Charset extends Object
编码常量
Since:
Java 17+
Author:
Kimi Liu
  • Field Details

    • DEFAULT

      public static final Charset DEFAULT
      默认字符集信息
    • DEFAULT_CHARSET

      public static final String DEFAULT_CHARSET
    • DEFAULT_ISO_8859_1

      public static final String DEFAULT_ISO_8859_1
      ISO拉丁字母第1号,即ISO- Latin -1
      See Also:
    • ISO_8859_1

      public static final Charset ISO_8859_1
    • DEFAULT_US_ASCII

      public static final String DEFAULT_US_ASCII
      7位ASCII码,即ISO646-US,也就是Unicode字符集的基本拉丁字符块
      See Also:
    • US_ASCII

      public static final Charset US_ASCII
    • DEFAULT_GBK

      public static final String DEFAULT_GBK
      GBK UCS 转换格式
      See Also:
    • GBK

      public static final Charset GBK
    • DEFAULT_GB_2312

      public static final String DEFAULT_GB_2312
      GB2312 转换格式
      See Also:
    • GB_2312

      public static final Charset GB_2312
    • DEFAULT_GB_18030

      public static final String DEFAULT_GB_18030
      GB18030 编码
      See Also:
    • GB_18030

      public static final Charset GB_18030
    • DEFAULT_UTF_8

      public static final String DEFAULT_UTF_8
      8位UCS转换格式
      See Also:
    • UTF_8

      public static final Charset UTF_8
    • DEFAULT_UTF_16

      public static final String DEFAULT_UTF_16
      16位UCS转换格式,字节顺序由可选的字节顺序标记标识
      See Also:
    • UTF_16

      public static final Charset UTF_16
    • DEFAULT_UTF_16_BE

      public static final String DEFAULT_UTF_16_BE
      16位UCS转换格式,大写字节顺序
      See Also:
    • UTF_16_BE

      public static final Charset UTF_16_BE
    • DEFAULT_UTF_16_LE

      public static final String DEFAULT_UTF_16_LE
      16位UCS转换格式,小写字节顺序
      See Also:
    • UTF_16_LE

      public static final Charset UTF_16_LE
    • DEFAULT_UTF_32_BE

      public static final String DEFAULT_UTF_32_BE
      32位UCS转换格式,大写字节顺序
      See Also:
    • UTF_32_BE

      public static final Charset UTF_32_BE
    • DEFAULT_UTF_32_LE

      public static final String DEFAULT_UTF_32_LE
      32位UCS转换格式,小写字节顺序
      See Also:
    • UTF_32_LE

      public static final Charset UTF_32_LE
  • Constructor Details

    • Charset

      public Charset()
  • Method Details

    • defaultCharset

      public static Charset defaultCharset()
      系统默认字符集编码
      Returns:
      系统字符集编码
    • defaultCharsetName

      public static String defaultCharsetName()
      系统默认字符集编码
      Returns:
      系统字符集编码
    • systemCharset

      public static Charset systemCharset()
      系统字符集编码,如果是Windows,则默认为GBK编码,否则取 defaultCharsetName()
      Returns:
      系统字符集编码
      See Also:
    • systemCharsetName

      public static String systemCharsetName()
      系统字符集编码,如果是Windows,则默认为GBK编码,否则取 defaultCharsetName()
      Returns:
      系统字符集编码
      See Also:
    • charset

      public static Charset charset(Charset charset)
      返回给定的字符集;如果给定的字符集为null,则返回默认的字符集
      Parameters:
      charset - 字符集或null
      Returns:
      给定的字符集;如果给定的字符集为null,则默认为字符集
    • charset

      public static Charset charset(String charsetName)
      转换为Charset对象
      Parameters:
      charsetName - 字符集,为空则返回默认字符集
      Returns:
      Charset
    • convert

      public static String convert(String source, String srcCharset, String destCharset)
      转换字符串的字符集编码
      Parameters:
      source - 字符串
      srcCharset - 源字符集,默认ISO-8859-1
      destCharset - 目标字符集,默认UTF-8
      Returns:
      转换后的字符集
    • convert

      public static String convert(String source, Charset srcCharset, Charset destCharset)
      转换字符串的字符集编码 当以错误的编码读取为字符串时,打印字符串将出现乱码 此方法用于纠正因读取使用编码错误导致的乱码问题 例如,在Servlet请求中客户端用GBK编码了请求参数,我们使用UTF-8读取到的是乱码,此时,使用此方法即可还原原编码的内容
       客户端 - GBK编码 - Servlet容器 - UTF-8解码 - 乱码
       乱码 - UTF-8编码 - GBK解码 - 正确内容
       
      Parameters:
      source - 字符串
      srcCharset - 源字符集,默认ISO-8859-1
      destCharset - 目标字符集,默认UTF-8
      Returns:
      转换后的字符集
    • convert

      public static File convert(File file, Charset srcCharset, Charset destCharset)
      转换文件编码 此方法用于转换文件编码,读取的文件实际编码必须与指定的srcCharset编码一致,否则导致乱码
      Parameters:
      file - 文件
      srcCharset - 原文件的编码,必须与文件内容的编码保持一致
      destCharset - 转码后的编码
      Returns:
      被转换编码的文件
    • parse

      public static Charset parse(String charsetName)
      解析字符串编码为Charset对象,解析失败返回系统默认编码
      Parameters:
      charsetName - 字符集,为空则返回默认字符集
      Returns:
      Charset
    • parse

      public static Charset parse(String charsetName, Charset defaultCharset)
      解析字符串编码为Charset对象,解析失败返回默认编码
      Parameters:
      charsetName - 字符集,为空则返回默认字符集
      defaultCharset - 解析失败使用的默认编码
      Returns:
      Charset