JavaNIO实现文件复制
2017-08-08 23:43
113 查看
NIO主要内容有Buffer、Channel、Charset及实现异步非阻塞IO的selector
这里通过使用IO流的getChannel()方法获取Channel,然后将文件内容映射到内存中获得Buffer 再将Buffer中的内容写入新的文件
这里通过使用IO流的getChannel()方法获取Channel,然后将文件内容映射到内存中获得Buffer 再将Buffer中的内容写入新的文件
package com.mark.learn.newio; import java.io.*; import java.nio.MappedByteBuffer; import java.nio.channels.FileChannel; /** * Created by Mark on 2017/8/8. */ public class Splendid { public static void main(String[] args) { //测试复制图片 String src="C:\\Users\\Mark\\Pictures\\Camera Roll\\na5.jpg"; String des="d:\\na5.jpg"; try { copyFileUseNIO(src,des); } catch (IOException e) { e.printStackTrace(); } } static void copyFileUseNIO(String src, String des) throws IOException { //IO流获取Channel FileChannel inChannel = new FileInputStream(src).getChannel(); FileChannel outChannel = new FileOutputStream(des).getChannel(); //将文件映射到内存 MappedByteBuffer buffer = inChannel.map(FileChannel.MapMode.READ_ONLY, 0, new File(src).length()); //写文件 outChannel.write(buffer); System.out.println("Copy file "+src+"To"+des+"has been successfully complieted."); inChannel.close(); outChannel.close(); } }
相关文章推荐
- javascript实现从Excel文件向Web表单的某列多行数据复制
- Java中递归实现复制文件夹和文件
- sql server数据库备份与复制(1):通过复制.mdf和.ldf文件实现数据转移
- Java实现文件复制
- Java IO 之 FileReader FileWriter 实现字符文件的复制(处理FileWriter新建文件失败的问题)
- java实现文件的复制,移动
- JAVA--I/O流实现文件的复制
- vim实现两个文件之间的复制
- KVO实现自定义文件复制进度效果
- RandomAccessFile实现多线程文件复制
- 实现文件和文件夹的复制的方法
- java字节流实现文件复制
- C实现复制文件
- FileReader和FileWriter字符流实现文件复制
- 目录间复制文件的线程实现
- c#实现将一个文件夹中的所有文件复制到另一个文件夹,并在新文件夹中创建一个txt文件记录copy的文件综述以及文件名称
- Java实现文件复制
- Java实现对于文件的多种操作,复制、删除、重命名、剪切文件、统计指定类型文件数等10个功能
- JavaScript实现删除,移动和复制文件的方法
- 如何利用C/C++逐行读取txt文件中的字符串(可以顺便实现文本文件的复制)