这周不但周内忙,周日帮礼泉的同学结婚,两天也一晃过去了。值得一提的是,我竟然一天中两顿吃出苍蝇来!让我情何以堪。T.T
随便写点什么吧。解析byte为String,以前也搞过,用的都是String的一些方法,看了书,发现一些更标准的,和大家分享一下。
其实很多方法可以解析,散布在Java类库的各处。但是,在java se1.4中,引入了java.nio包中Charset类统一了对字符集的转换。
字符集建立了量自己Unicode码元序列与使用本地字符编码方式的字节序列之间的映射。ISO-8859-1是最流行的字符编码方式之一(java源码也能找到这样的编码方式,我的理解,这货应该是ascii码的优化版本吧,都是256个字符),ISO-885-15说是更加重要,是更优化的版本,如去掉一些无用符号,引入常用符号等。
Charset cset = Charset.forName("ISO-8859-1");
如何编码:
String str = "...";
ByteBuffer buffer = cset.encode(str);
byte[] bytes = buffer.array();
如何解码:
byte[] bytes = ...;
ByteBuffer bbuf = ByteBuffer.wrap(bytes, offset, length);
CharBuffer cbuf = cset.decode(bbuf);
String str = cbuf.toString();
第1.3节,介绍了以前曾介绍过的改良utf-8,得知原来utf16对大于0xffff的unicode编码有不同的方式(不是两字节,别且还挺长),好吧,原来是这样的。。。
分享到:
相关推荐
项目经过测试均可完美运行! 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse
项目经过测试均可完美运行! 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse
基于java的网吧管理系统答辩PPT.pptx
基于java的基于SSM架构的网上书城系统答辩PPT.pptx
tornado-6.1-cp37-cp37m-win32.whl
c语言气泡排序、插入排序、选择排序、快速排序、希尔排序、堆排序、合并排序_SortAlgorithm.zip
Keyboard Maestro 11.0.3_macwk.dmg
基于微信小程序的鲜花销售微信小程序答辩PPT.pptx
项目经过测试均可完美运行! 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse
tornado-6.2b1-cp39-cp39-musllinux_1_1_x86_64.whl
项目经过测试均可完美运行! 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse
tornado-6.1b2-cp38-cp38-manylinux2014_aarch64.whl
基于java的土家风景文化管理平台答辩PPT.pptx
jira安装包
基于java的机场网上订票系统答辩PPT.pptx
小区物业管理系统 SSM毕业设计 附带论文 启动教程:https://www.bilibili.com/video/BV1GK1iYyE2B
yolo算法-金属-纸张-硬纸板垃圾数据集-13409张图像带标签-金属-纸张-硬纸板-塑料-其他-烟蒂-食物-玻璃.zip;yolo算法-金属-纸张-硬纸板垃圾数据集-13409张图像带标签-金属-纸张-硬纸板-塑料-其他-烟蒂-食物-玻璃.zip;yolo算法-金属-纸张-硬纸板垃圾数据集-13409张图像带标签-金属-纸张-硬纸板-塑料-其他-烟蒂-食物-玻璃.zip
项目介绍: 系统模块主要包括;用户、考试信息、考场信息、试卷、试题、考试等管理功能 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse
项目经过测试均可完美运行! 环境说明: 开发语言:java jdk:jdk1.8 数据库:mysql 5.7+ 数据库工具:Navicat11+ 管理工具:maven 开发工具:idea/eclipse
Python脚本运行环境搭建所需要的资源包