使用java NIO进行读文件
2018-07-20 来源:open-open
Java NIO非堵塞技术实际是采取Reactor模式,或者说是Observer模式为我们监察I/O端口,如果有内容进来,会自动通知我们,这样,我们就不必开启多个线程死等,从外界看,实现了流畅的I/O读写,不堵塞了。 这段代码是使用java NIo读一个文件的简单应用。
public static String readUseNIO(File file) {
FileInputStream fin;
String string = null;
try {
fin = new FileInputStream(file);
FileChannel channel = null;
channel = fin.getChannel();
// 文件内容的大小
int size = (int) channel.size();
// 获取通道
FileChannel fc = fin.getChannel();
// 创建缓冲区
ByteBuffer buffer = ByteBuffer.allocate(1024 * 1024 * 1);
// 读取数据到缓冲区
fc.read(buffer);
// Buffer bf = buffer.flip();
// System.out.println("limt:" + bf.limit());
byte[] bt = buffer.array();
string = new String(bt, 0, size,"UTF-8");
// System.out.println(new String(bt, 0, size));
// FileUtil.appendString("F:/html/22.html", new String(bt, 0,
// size));
buffer.clear();
buffer = null;
fin.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return string;
}
标签: 代码
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
上一篇:判断用户是否使用代理的PHP代码
下一篇:PHP多文件上传类
最新资讯
热门推荐