NIO学习笔记(一)
来源:互联网 发布:怎么测试80端口 编辑:程序博客网 时间:2024/05/19 11:50
指导文章来自IBM: http://www.ibm.com/developerworks/cn/education/java/j-nio/section5.html
I/O技术,是不得不学的,既然逃不过,就勇敢地面对吧。发现可以取巧,虽然我也不喜欢用这么一种封装过的工具类,但是说实话,确实好用。为什么不喜欢用呢?因为最精华的那部分代码,都被这工具类封装了,只是做调用方法的工作,是不能锻炼出很好的逻辑思维的。而现在要面临的是,我必须很快学会这I/O的操作,实现某些功能,那好吧,我也只能是先知其然,后再补补其所以然的道理。
今天就写了这么一个Demo,惭愧啊。。
package com.insigma.model;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.nio.ByteBuffer;import java.nio.channels.FileChannel;public class InputStreamModel {public void readFile(){try {FileInputStream fin = new FileInputStream("D:/SoftWarePackage/tools/AdobeDreamweaverCS4_cn.exe");FileChannel fcin = fin.getChannel();ByteBuffer buffer = ByteBuffer.allocate(1024);FileOutputStream fout = new FileOutputStream("testExe.exe");FileChannel fcout = fout.getChannel();while(true){buffer.clear();int r = fcin.read( buffer );if (r==-1) { break;}buffer.flip();fcout.write( buffer );}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}public static void main(String[] args) {InputStreamModel ism = new InputStreamModel();ism.readFile();}}
如果单单是操作这些的话,那I/O真的变得超级简单。测试过了,大的文件也没有问题,以前自己写的方法用来读写大文件的时候就经常是有错误的。但是,如果有其他需求的话呢?还真不知道如果搞定呢。
- NIO学习笔记(一)
- NIO学习笔记一
- Java NIO学习笔记一(IO VS NIO)
- NIO学习一、NIO简介
- nio基础学习(一)
- NIO学习(一)
- NIO 学习 >>> (一)
- Java NIO学习一
- Java NIO笔记(一):NIO介绍
- Java Nio学习笔记
- NIO学习笔记
- NIO学习笔记1
- Java NIO学习笔记
- [网络]NIO学习笔记
- java NIO 学习笔记
- NIO学习笔记二
- NIO学习笔记三
- NIO学习笔记四
- hibernate 对象继承不能乱用
- PHP的一个过滤敏感词或脏话的方法
- Mina网络应用框架及TCP/UDP开发范例(编著)
- 16进制的一些常用转换
- Bluetooth Page scan and Inquiry scan
- NIO学习笔记(一)
- s
- 浅谈Objective-c中的内存管理
- 浅谈如何营造高效的软件开发团队
- Using Bluetooth
- 十个超级有用的PHP代码片段
- dos常用命令---路由跟踪命令.查看DNS、IP、Mac等
- utl_dbws.ANYDATA_LIST类型初始化问题
- SQL CROSS APPLY OUTER APPLY PIVOT UNPIVOT