网上资料大把,但要写写代码,我这个年纪的人才有一点点记忆了。。

参考URL:

http://blog.csdn.net/wuxianglong/article/details/6612282

package com.cg.io;import java.io.*;
import java.nio.*;
import java.nio.channels.*;public class TestIntBuffer {static private final byte message[] = {83, 111, 109, 101, 32, 98, 98};static private String fileName = "d:\\hehehe\\test.txt";public static void main(String[] args) throws Exception {FileOutputStream fout = new FileOutputStream(fileName);FileChannel fc = fout.getChannel();ByteBuffer byteBuffer = ByteBuffer.allocate(1024);output("初始化", byteBuffer);for (int i=0; i<message.length; ++i) {byteBuffer.put(message[i]);}byteBuffer.flip();output("调用flip()", byteBuffer);fc.write(byteBuffer);output("调用write()", byteBuffer);fout.close();byteBuffer.clear();output("调用clear()", byteBuffer);FileInputStream fin = new FileInputStream(fileName);fc = fin.getChannel();fc.read(byteBuffer);output("调用read()", byteBuffer);byteBuffer.flip();output("调用flip()", byteBuffer);while (byteBuffer.remaining() > 0) {byte b = byteBuffer.get();System.out.print(((char)b));}output("调用getChannel()", byteBuffer);byteBuffer.clear();output("调用clear()", byteBuffer);fin.close();IntBuffer intBuffer = IntBuffer.allocate(8);for (int i=0; i < intBuffer.capacity(); ++i) {int j = 2 * (i + 1);intBuffer.put(j);}intBuffer.flip();while (intBuffer.hasRemaining()) {int j = intBuffer.get();System.out.print(j + " ");}}public static void output(String step, Buffer buffer){System.out.println(step + " : ");System.out.println("capacity: " + buffer.capacity() + ", ");System.out.println("position: " + buffer.position() + ", ");System.out.println("limit: " + buffer.limit() + ", ");System.out.println();}
}

了解一下JAVA中的NIO模块相关推荐

  1. java中的NIO和IO到底是什么区别?20个问题告诉你答案

    摘要:NIO即New IO,这个库是在JDK1.4中才引入的.NIO和IO有相同的作用和目的,但实现方式不同,NIO主要用到的是块,所以NIO的效率要比IO高很多. 本文分享自华为云社区<jav ...

  2. java中io.nio.aio_Java中网络IO的实现方式-BIO、NIO、AIO

    在网络编程中,接触到最多的就是利用Socket进行网络通信开发.在Java中主要是以下三种实现方式BIO.NIO.AIO. 关于这三个概念的辨析以前一直都是好像懂,但是表达的不是很清楚,下面做个总结完 ...

  3. java中的NIO,BIO,AIO

    IO,input和output,Java 为 I/O 提供了强大的而灵活的支持,使其更广泛地应用到文件传输和网络编程中. IO是什么?为什么需要IO? java在1.4之前,提供的是BIO,也就是ja ...

  4. IO之 java中BIO NIO AIO原理、区别以及应用

    在本篇文章中,我们主要介绍一下java中的BIO NIO AIO,重点是NIO 先说一下同步.异步.阻塞和非阻塞. 简单来讲,同步和异步是针对内核和应用程序之间的交互而言的:阻塞和非阻塞其实是针对进程 ...

  5. JAVA 中BIO,NIO,AIO的理解

    [转自]http://qindongliang.iteye.com/blog/2018539 在高性能的IO体系设计中,有几个名词概念常常会使我们感到迷惑不解.具体如下: 序号 问题 1 什么是同步? ...

  6. Java中的NIO非阻塞编程

    在JDK1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞API.对于大多数应用来说,这样的API使用很方便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为 ...

  7. 深入理解JAVA中的NIO

    2019独角兽企业重金招聘Python工程师标准>>> 前言: 传统的 IO 流还是有很多缺陷的,尤其它的阻塞性加上磁盘读写本来就慢,会导致 CPU 使用效率大大降低. 所以,jdk ...

  8. java 中的NIO

    NIO 概念 NIO: New IO. Non-Blocking IO. NIO 是JDK1.4的时候出现了⼀个新的IO, ⽤来替代传统的IO流. NIO与IO有着相同的功能, 但是操作的⽅法不同.J ...

  9. Java中BIO,NIO,AIO

    这里建议不太清楚这个三个概念的可以看我的这篇文章,通俗易懂http://blog.csdn.net/sky_100/article/details/77603576 一.BIO 在JDK1.4出来之前 ...

最新文章

  1. 明年迎来AI泡沫集体爆发?不,融资将再创新高,但这或许是最后一次狂欢
  2. 查看哪个进程占用端口
  3. 目标检测优化2021
  4. 领扣(LeetCode)最长公共前缀 个人题解
  5. 【NLP】BERT蒸馏完全指南|原理/技巧/代码
  6. [C++STL]set容器用法介绍
  7. java获取行号_java – 如何获取一个方法的行号?
  8. 谨防职业病 IT人士必不可少的四类食物
  9. cmd进入mysql界面的命令
  10. Java对象转Map的解决办法_java对象转map怎么操作?map如何转化成Java对象?
  11. 构建人人网社会化推荐引擎
  12. 计算机添加usb网络打印机,电脑USB连接打印机怎么共享给别的电脑?
  13. win10天气是英文的
  14. 活动桌面处理和一个例子
  15. vue金额数字转大写的方法
  16. 计算机上根号是哪一个,电脑上怎么哪个键是数学中的开根号啊
  17. java float类型是否为空_java – 如何使float类型的变量为null
  18. miscellaneous_7
  19. 在计算机应用领域中深蓝,2015年计算机二级MS Office习题及答案解析(13)
  20. 每日新闻摘要,19/4/10:随着Exodus投放iOS设备,间谍软件不仅适用于Android

热门文章

  1. JAVA中BigDecimal的字符化输出
  2. AngularJS消费 小计
  3. Servlet 客户端 HTTP 请求
  4. Selenium API-WebElement 属性
  5. CI(持续集成)/CD(持续部署)
  6. 动易软件上传文件服务器错误,动易 应用程序中的服务器错误
  7. c语言程序怎么打分数,用C语言编程平均分数
  8. Java与Web前端发展前景及薪资对比
  9. HTML5开发APP有哪些优点和缺点?HTML5优势和劣势大对比
  10. linux统计某个字符个数,Linux统计一个文件中特定字符个数的方法