54.黑马程序员-IO流-字符编码

来源:互联网 发布:通州梨园附近淘宝店 编辑:程序博客网 时间:2024/06/10 09:26

------- android培训、java培训、期待与您交流! ----------

    一、概念
  • 字符流是为了方便操作字符,内部加入了编码表。
  • 字节流转换成字符流通过转换流:InputStreamReader、OutputStreamWriter。
  • 另外两个流只能打印不能读取:PrintStream、PrintWriter。
  • 编码表:用10的二进制表示成各国文字的映射表。常见的ASCII:7位、GB2312:8位,首位为1、GBK第一、二字节首位都为1,Unicode:国际标准码,两个字节,Java使用这个编码。UTF-8:Unicode的升级版,最多三字节。
    二、编码、解码
  • 编码:字符串变成字节数组 String s ="你好";byte [] b1 = s.getBytes("GBK") ;//按照GBK编码
  • 解码:字节数组变成字符串String s1 = new String(b1,"ISO8859-1");//按照ISO8859-1解码
  • 用A编码,用B解码,会出现错误。可以再把B编码,再用A解码解决。例如Tomcat服务器默认的是IS0-8859-1,就需要编码再解码。
  • 注意:UTF-8和GBK都识别中文,一个编另一个解的话会出错。
原创粉丝点击