- 浏览: 61421 次
- 性别:
- 来自: 深圳
文章分类
package com.tij.io.file; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.nio.channels.FileChannel; import javax.naming.ldap.SortControl; import org.apache.commons.io.FileUtils; /** * java复杂文件的四种方法 * @author guoyoujun * @date 2014-3-17 */ public class JavaCopyFile { /** * java复杂文件的四种方法 * <p>1、传统方法:使用流 * <p>2、java.nio.channels.FileChannel * <p>3、Apache Commons IO FileUtils.copyFile() * <p>4、java7 copy() * @param args * @throws IOException */ public static void main(String[] args) throws IOException { File source = new File("/Users/GYJ/funshion/update/popwind.json"); File dest = new File("/Users/GYJ/a.json"); copyFileUsingStream(source, dest); copyFileUsingChannel(source, dest); copyFileUsingApacheCommonsIO(source, dest); copyFileUsingJava7Files(source, dest); } /** * 使用流来复制文件 * @param source * @param dest * @throws IOException */ private static void copyFileUsingStream(File source, File dest) throws IOException { InputStream is = null; OutputStream os = null; try { is = new FileInputStream(source); os = new FileOutputStream(dest); byte[] buffer = new byte[1024]; int length; while ((length = is.read(buffer)) > 0) { os.write(buffer, 0, length); } } catch (FileNotFoundException e) { e.printStackTrace(); } finally { is.close(); os.close(); } } /** * 使用java.nio.channels.FileChannel * @param source * @param dest * @throws IOException */ private static void copyFileUsingChannel(File source, File dest) throws IOException { FileChannel sourceChannel = null; FileChannel destChannel = null; try { sourceChannel = new FileInputStream(source).getChannel(); destChannel = new FileOutputStream(dest).getChannel(); destChannel.transferFrom(sourceChannel, 0, sourceChannel.size()); } catch (FileNotFoundException e) { e.printStackTrace(); } finally { sourceChannel.close(); destChannel.close(); } } /** * 使用ApacheCommonsIO(需要commons-io-2.0.1.jar) * @param source * @param dest * @throws IOException */ private static void copyFileUsingApacheCommonsIO(File source, File dest) throws IOException { // org.apache.commons.io.FileUtils FileUtils.copyFile(source, dest); } /** * java7中的方法 * @param source * @param dest */ private static void copyFileUsingJava7Files(File source, File dest) { //java7中可以使用Files类的copy()方法 //Files.copy(source.toPath(), dest.toPath()); } }
发表评论
-
21、java从文件读取对象
2014-03-22 22:47 752package com.tij.io.file; i ... -
20、java把实体对象写入文件
2014-03-22 22:33 1938这是要写入的实体对象 package com.tij.io ... -
19、java根据URL下载文件内容
2014-03-22 22:08 2375package com.tij.io.file; i ... -
18、java随机访问RandomAccessFile类
2014-03-22 21:35 1103package com.tij.io.file; i ... -
17、java追加文件内容(写入方式)
2014-03-22 21:11 3318package com.tij.io.file; i ... -
16、java写入文件的几种方式
2014-03-21 19:02 1990package com.tij.io.file; i ... -
11、java读取文件的几种方式
2014-03-18 00:02 1333package com.tij.io.file; i ... -
14、java打开文件
2014-03-18 00:03 625package com.tij.io.file; i ... -
13、java中几种不同文件路径的差别(绝对路径,全路径)
2014-03-18 00:03 1212package com.tij.io.file; i ... -
15、java使用FileNmeFilter列出指定扩展文件
2014-03-18 00:04 725package com.tij.io.file; i ... -
10、java获取文件最后的修改时间
2014-03-17 14:19 1338package com.tij.io.file; i ... -
9、java判断file是文件还是目录
2014-03-17 14:07 7157package com.tij.io.file; i ... -
8、java判断文件是否存在目录
2014-03-17 13:51 3708package com.tij.io.file; i ... -
7、java获取文件扩展名
2014-03-17 11:50 3356package com.tij.io.file; i ... -
6、java如何计算文件的大小
2014-03-17 09:50 1007package com.tij.io.file; i ... -
5、java如何实现移动文件、重命名文件
2014-03-16 17:07 1749java.io.File renameTo(File dest ... -
4、java如何删除目录和文件
2014-03-16 16:19 1122package com.tij.io.file; ... -
3、了解java的文件4种分隔符
2014-03-16 15:53 6336java.io.File类中有四种静态分隔符; 分别是sepa ... -
2、java如何删除文件
2014-03-16 15:14 717package com.tij.io.file; i ... -
1、java如何创建新文件
2014-03-16 14:53 902在java中可以使用 java.io.file 类来创建 ...
相关推荐
### Java复制文件的四种方式详解 #### 概述 在Java开发过程中,文件操作是一项基本且重要的任务。其中,文件复制是经常需要用到的功能之一。尽管Java标准库并未直接提供一个简单的方法来复制文件,但开发者可以...
用java复制拷贝文本文件的不同方法和比较; 字节流,字符流等等。
当需要复制一个完整的文件夹时,除了复制文件之外,还需要考虑文件夹的创建和递归复制。下面是一段示例代码: ```java private static void copyFolder(String oldPath, String newPath) { try { (new File...
根据提供的文件标题、描述、标签以及部分内容,我们可以总结出与“Java复制文件代码”相关的重要知识点。虽然提供的代码片段存在一些未完成的部分和注释掉的代码,但是我们仍然可以从中提取有价值的信息,并且深入...
java复制文件方法,关于文件的操作,很全。
在Java编程语言中,文件和文件夹的复制是一项常见的任务,尤其在系统迁移...以上就是关于Java中使用递归复制文件和文件夹的核心知识点。通过理解这些概念和实践,你将能够有效地在Java程序中处理文件和目录的复制任务。
Java文件夹复制功能是通过编程实现的,主要涉及到文件操作和网络通信两个核心知识点。这里有两个关键类:`FileSelection` 和 `BackupClient`。`FileSelection` 类用于选择和组织待复制的文件,而 `BackupClient` 类...
在Java编程中,复制文件和复制文件夹是常见的操作,特别是在处理数据迁移、备份或程序部署时。下面我们将深入探讨如何使用Java实现这些功能,并提供相关的代码示例。 首先,让我们看看如何复制单个文件。Java标准库...
在这个主题中,我们将深入探讨如何使用Java的IO流进行文件复制,重点讨论四个关键函数:`Reader`, `Writer`, `InputStream`, 和 `OutputStream`。 1. **Reader与Writer**: - **Reader** 是字符输入流的抽象类,...
在本节中,我们将介绍 Java 文件复制粘贴的实现方法。 文件复制粘贴的重要性 文件复制粘贴是计算机操作系统中的一种基本操作。它可以将文件从一个位置复制到另一个位置,实现文件的备份、传输和共享。文件复制粘贴...
以上就是使用Java复制指定目录下文件的基本方法,无论是使用传统的`java.io`还是现代化的`java.nio.file`,都可以有效地完成这项任务。在实际应用中,还需要注意错误处理和异常捕获,确保程序的健壮性。例如,确保...
Java文件操作一例:Copy 复制文件,虽然是复制文件,不过通过本源码你可以学习很多相关的Java基础技巧,比如Java对文件的事件处理、取得目录内容的事件处理、如何弹出文件选择器、如何得到选择文件的绝对路径、如何...
本资源主要讲解了高效率文件复制的java实现方法,包含了两种不同的实现方式,分别使用java io流和FileChannel来实现文件复制操作。 知识点1:Java IO流文件复制 在第一个实现方法中,我们使用了Java IO流来实现...
java文件复制,使用java语言开发的,效果如windows 的复制和粘贴效果。
Java 单线程复制文件和使用RandomAccessFile多线程复制文件的比较,对应博客地址为http://blog.csdn.net/zmichealchow/article/details/38687431
"Java 文件复制(带有编码类型)" 在 Java 中,文件复制是非常常见的操作。今天,我们将讨论如何使用 Java 将文件从一个位置复制到另一个位置,并且带有编码类型。 标题:Java 文件复制(带有编码类型) 描述:...
在Java编程语言中,文件复制是一项常见的任务,用于在不同位置之间移动或备份数据。本文将详细介绍如何在Java中实现文件复制,同时考虑到输入输出异常处理,并在DOS控制台环境中运行程序。 首先,我们需要创建一个...
Java IO文件操作类与复制文件实例,有关文本编辑、FileWriter文件写入、FileReade文件读娶DataStream文件数据流、BufferedReader文件暂存器、FileViewer文件浏览器、复制文件Copy等方面的操作要领,仅供学习参考。
本文将深入探讨如何使用Java实现文件的复制,包括单个文件的复制和整个文件夹及其子文件的复制。 首先,我们来看一个简单的Java程序,用于复制单个文件。这个例子中,我们将使用`java.io`包中的`...
在IT行业中,Java是一种广泛应用的编程语言,尤其在文件操作和网络通信方面有着广泛的应用。本文将详细讨论如何使用Java连接FTP(File Transfer Protocol)服务器,进行文件的上传、下载、删除以及复制等操作。 ...