`
liuzhaomin
  • 浏览: 198782 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

NIO字符集操作

 
阅读更多

 

示例程序

在打开相应的文件、将输入数据读入名为 inputData 的 ByteBuffer 之后,我们的程序必须创建 ISO-8859-1 (Latin1) 字符集的一个实例:

Charset latin1 = Charset.forName( "ISO-8859-1" );


然后,创建一个解码器(用于读取)和一个编码器 (用于写入):

CharsetDecoder decoder = latin1.newDecoder();
CharsetEncoder encoder = latin1.newEncoder();


为了将字节数据解码为一组字符,我们把 ByteBuffer 传递给 CharsetDecoder,结果得到一个 CharBuffer:

CharBuffer cb = decoder.decode( inputData );


如果想要处理字符,我们可以在程序的此处进行。但是我们只想无改变地将它写回,所以没有什么要做的。

要写回数据,我们必须使用 CharsetEncoder 将它转换回字节:

ByteBuffer outputData = encoder.encode( cb );


在转换完成之后,我们就可以将数据写到文件中了。 
 

 

 

 

分享到:
评论

相关推荐

    尚硅谷Java视频_NIO 视频教程

    ·00. 尚硅谷__NIO__源码、课件 ·... 尚硅谷_NIO_字符集 Charset ·08. 尚硅谷_NIO_阻塞与非阻塞 ·09. 尚硅谷_NIO_阻塞式 ·10. 尚硅谷_NIO_非阻塞式 ·11. 尚硅谷_NIO_DatagramChannel ·12. 尚硅谷_NIO_Pipe 管道

    java nio中文版

    – 字符集编码解码解决方案。 – Channel :一个新的原始 I/O 抽象。 – 支持锁和内存映射文件的文件访问接口。 – 提供多路 (non-bloking) 非阻塞式的高伸缩性网络 I/O 。 本文档将围绕这几个特性进行学习和介绍。

    java nio.doc

    java.nio.charset 包中定义了字符集 API,java.nio.channels 包中定义了信道和选择器 API。每个子包都具有自己的服务提供程序接口 (SPI) 子包,SPI 子包的内容可用于扩展平台的默认实现或构造替代实现。

    NIO学习系列:文件锁定和字符集

    NULL 博文链接:https://zhangshixi.iteye.com/blog/685022

    java nio 中文版

    第六章 字符集 --------------------- 作者:仓鼠洞 来源:CSDN 原文:https://blog.csdn.net/zhiyong499/article/details/78711911 版权声明:本文为博主原创文章,转载请附上博文链接!

    nio.rar_Java识别_java nio

    利用java,nio,charset,CharsetDecoder自动识别字符集

    JapaneseCharsetConvert:日语字符集转换

    字符集转换 日语字符集转换 通过在 Java 启动选项中添加以下内容,我能够处理 ShiftJIS 和 JIS,而不会认为这会太困难。 如果是System.setProperty,可能无法设置好,那么在启动选项中指定是否安全? -Dsun.nio.cs...

    JAVA Nio 学习探究

    包含NIO核心概念、基本文件读写、缓冲区内部实现机制、异步IO、缓冲区更多特性探究、文件锁与字符集

    Java性能优化之使用NIO提升性能(Buffer和Channel)

    在软件系统中,由于IO的速度要比内存慢...使用java.nio.charset.Charset作为字符集编码解码解决方案;增加通道(channel)对象,作为新的原始I/O抽象;支持锁和内存映射文件的文件访问接口;提供了基于Selector的异步网

    Java NIO 聊天室 JSwing

    // 选择一组可以进行I/O操作的事件,放在selector中,客户端的该方法不会阻塞, //这里和服务端的方法不一样,查看api注释可以知道,当至少一个通道被选中时, //selector的wakeup方法被调用,方法返回,而对于...

    tomcat-8.0.21

    Tomcat8新版本特性: 1.支持servlet3.1, jsp 2.3, el表达式3.0 and Java WebSocket 1.0. ...4.默认支持应用工程字符集为UFT-8 5.提升了日志性能,采用了异步技术 6.新增AJP 连接采用了Servlet3.1的non-blocking IO。

    day019-io笔记和代码.rar

    * 1、因为字符集不统一,即编码和解码new String(b,0,read,"gbk")字符集不一致 * 2、因为字节流读取汉字的时候,字节数组长度不够,将一个汉字拆开了 * 解决: * 1. 用字符流用统一的字符集(最...

    基础深化和提高-IO流技术学习大全

    字符输入流(Reader)和字符输出流(Writer):用于处理文本数据,以字符为单位进行读写,支持字符集的编解码。常见的实现类包括FileReader、FileWriter等。 I/O流技术提供了丰富的功能和特性,使得开发者能够轻松地...

    AutoCharsetReader.java

    利用java.nio.charset.CharsetDecoder自动检测字符集。详见http://blog.csdn.net/lngrvr 。

    精通并发与netty视频教程(2018)视频教程

    45_深入探索Java字符集编解码 46_字符集编解码全方位解析 47_Netty服务器与客户端编码模式回顾及源码分析准备 48_Netty与NIO系统总结及NIO与Netty之间的关联关系分析 49_零拷贝深入剖析及用户空间与内核空间切换方式...

    apache-tomcat-8.0.0-RC5

    最新版tomcat8.0,1.支持servlet3.1, jsp 2.3, el表达式3.0 and Java WebSocket 1.0. ...4.默认支持应用工程字符集为UFT-8 5.提升了日志性能,采用了异步技术 6.新增AJP 连接采用了Servlet3.1的non-blocking IO。

    精通并发与 netty 视频教程(2018)视频教程

    39_NIO中Scattering与Gathering深度解析 40_Selector源码深入分析 41_NIO网络访问模式分析 42_NIO网络编程实例剖析 43_NIO网络编程深度解析 44_NIO网络客户端编写详解 45_深入探索Java字符集编解码 46_字符集编解码...

    精通并发与netty 无加密视频

    第45讲:深入探索Java字符集编解码 第46讲:字符集编解码全方位解析 第47讲:Netty服务器与客户端编码模式回顾及源码分析准备 第48讲:Netty与NIO系统总结及NIO与Netty之间的关联关系分析 第49讲:零拷贝深入...

    Servlet 中文乱码问题

    1 GBK包含GB2312 即如果通过GB2312编码后可以通过GBK解码 反之可能不成立; 2 java nio charset Charset defaultCharset 获得平台默认字符编码; 3 getBytes 是通过平台默认字符集进行编码;

Global site tag (gtag.js) - Google Analytics