`
雨打蕉叶
  • 浏览: 236081 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

java复制文件,复制图片不能打开解决。

阅读更多
/**
	 * 复制文件
	 * @param source 源文件
	 * @param destination 目标文件
	 */
	public static void copyFile(File source, File destination) {

		FileInputStream sourceFile = null;
		FileOutputStream destinationFile = null;
		try {

			destination.createNewFile();

			sourceFile = new FileInputStream(source);
			destinationFile = new FileOutputStream(destination);
			BufferedReader br = new BufferedReader(new FileReader(source));
			//ByteArrayInputStream bin=new ByteArrayInputStream(br.r)
			BufferedWriter bw = new BufferedWriter(new FileWriter(destination));

			String str = null;
			while ((str = br.readLine()) != null) {
				bw.write(str);
				bw.newLine();
				bw.flush();
			}

		} catch (FileNotFoundException f) {
		} catch (IOException e) {
		} finally {

			try {
				sourceFile.close();
			} catch (Exception e) {
			}
			try {
				destinationFile.close();
			} catch (Exception e) {
			}
		}
	}

以上复制文本文件没有问题,但是复制图片就不行。
public static void copyImage(File source, File destination ){

		  FileInputStream fi = null;
		try {
			fi = new FileInputStream(source);
		} catch (FileNotFoundException e) {
			
			e.printStackTrace();
		}
		  BufferedInputStream in=new BufferedInputStream(fi);
		  FileOutputStream fo = null;
		try {
			fo = new FileOutputStream(destination);
		} catch (FileNotFoundException e) {
			
			e.printStackTrace();
		}
		  BufferedOutputStream out=new BufferedOutputStream(fo);
		  
		  byte[] buf=new byte[1024];
		  int len;
		try {
			len = in.read(buf);
			  while(len!=-1){
				   out.write(buf, 0, len);
				   len=in.read(buf);
				  }
			  out.close();
			  fo.close();
			  in.close();
			  fi.close();
		} catch (IOException e) {
			
			e.printStackTrace();
		}
		
		
	}

这个能完成所有文件的复制
分享到:
评论

相关推荐

    java 文本文件 支持新建,打开,复制,剪切...

    复制文件通常涉及使用两个文件流:一个用于读取源文件,另一个用于写入目标文件。可以使用`BufferedInputStream`和`BufferedOutputStream`来提高性能。读取源文件的每一行或每个字符,并将其写入目标文件,直到完成...

    java 复制指定目录下的文件

    以上就是使用Java复制指定目录下文件的基本方法,无论是使用传统的`java.io`还是现代化的`java.nio.file`,都可以有效地完成这项任务。在实际应用中,还需要注意错误处理和异常捕获,确保程序的健壮性。例如,确保...

    java文件复制(全)

    在Java编程中,文件复制是一项基础且常见的任务,无论是在日常开发还是系统集成中都扮演着重要角色。本文将深入探讨如何使用Java实现文件的复制,包括单个文件的复制和整个文件夹及其子文件的复制。 首先,我们来看...

    Java程序_复制文件.jar

    Java程序“Java程序_复制文件.jar”是一个基于Java平台的实用工具,主要目的是演示如何在Java中实现文件的复制和移动操作。这个程序对于正在学习Java输入/输出(IO)和Swing GUI库的学生来说是一个很好的参考实例。...

    java 连接 FTP 文件操作(上传,下载,删除,复制

    FTP本身不直接支持文件复制,但可以通过先下载再上传的方式来实现。首先下载目标文件到本地,然后上传到FTP服务器的另一个位置。 ```java // 下载 OutputStream localOutputStream = new FileOutputStream(...

    Java poi复制execl的sheet页,跨文件操作,数据和样式全部复制,工具类

    在这个例子中,我们展示了如何跨文件复制Sheet页,不仅复制了数据,还保留了样式和格式,这对于数据处理和报告生成等场景非常有用。在实际应用中,可能还需要根据需求进行额外的定制,例如添加错误处理、支持更多...

    文件资源管理器(java)文件打开删除复制粘贴等

    在Java中,我们可以使用`File.copy()`方法进行文件复制,但请注意,这并不适用于跨文件系统的操作。对于更复杂的情况,如递归复制整个目录结构,我们需要编写自定义逻辑,遍历目录并逐个复制文件。例如,我们可以...

    java图片复制打不开

    根据提供的代码片段,我们可以看到一个基本的文件复制过程,但该过程似乎存在一些问题,导致复制后的图片无法打开。接下来,我们将深入分析这一问题,并提出可能的解决方案。 ### Java中的文件读写 在Java中,处理...

    java文件复制器代码

    为了确保文件复制的成功,我们需要正确地处理各种可能出现的异常,例如文件不存在、无法打开或写入等问题。 在 `copy` 方法中,首先检查源文件是否存在。如果不存在,则输出错误信息并返回。接着,程序会判断源文件...

    java中实现复制文件和文件夹

    在Java编程语言中,复制文件和文件夹是一个常见的任务,特别是在处理文件系统操作时。这里我们将深入探讨如何使用Java实现这个功能。 首先,让我们来看一下标题中提到的`copyFile`方法,这是一个用于复制单个文件的...

    java文件复制

    综上所述,这个"java文件复制"项目涵盖了Java I/O流的使用、GUI设计、异常处理等多个核心知识点,为用户提供了一种实用的文件复制解决方案。通过学习和实践,开发者可以深入理解Java文件操作和GUI编程。

    java 文件管理器

    这使得用户可以在进行耗时操作(如大文件复制)时仍可以继续使用其他功能,提高了用户体验。 5. **事件监听**:在GUI应用中,按钮点击、菜单选择等用户行为通常需要监听。Java的`ActionListener`接口和事件类(如`...

    java下载文件到指定路径(不打开窗口)

    ### Java下载文件到指定路径(不打开窗口) #### 概述 本文档主要介绍如何使用Java编程语言实现从网络上下载文件并将其保存至本地指定路径的功能,且在执行过程中不会弹出任何用户界面窗口。这种方法非常适合后台...

    Java打开文件和保存文件

    - `Files`类(在`java.nio.file`包中)提供了许多静态方法,可以直接进行文件操作,如复制、移动、删除等。 - 如果需要处理二进制文件,可以使用`FileInputStream`和`FileOutputStream`,配合`DataInputStream`和`...

    使用java程序从磁盘中复制文件到另一个文件中(声音、图片、视频、文本,word文档等都可以复制),一定要保持复制的文件与源文件的字节大小相等

    程序执行成功后一定要查看两个文件的字节大小是否想等,有可能新复制的文件比源文件大,但是这样也能打开

    文件复制、显示及修改java代码

    在这个“文件复制、显示及修改java代码”的示例中,我们将深入探讨如何使用Java来处理这些操作,特别是针对TXT文本文件。 首先,让我们了解如何读取TXT文件的内容。在Java中,`java.io`包提供了多种类用于文件操作...

    java copytest(复制)

    Java复制程序,通常用于在文件系统中移动或备份数据,是一种基本的文件操作。在这个名为"java copytest(复制)"的项目中,开发者创建了一个简单的应用,允许用户选择源文件并将其内容复制到目标文件。这个程序可能...

    Java I/O文件读写/删除/复制等

    复制文件通常使用 `FileInputStream` 和 `FileOutputStream` 结合 `BufferedInputStream` 和 `BufferedOutputStream` 来实现。通过读取源文件的字节并写入目标文件,可以完成复制操作。 4. **文件的权限设置** ...

    java实现windows文件系统操作监控

    在Java中,虽然原生支持并不完善,但我们可以通过Java的JNI(Java Native Interface)与C/C++库进行交互来实现这一目标。下面我们将详细探讨如何实现这个功能以及涉及的相关知识点。 1. **系统钩子(System Hooks)...

    IO流三种流方式的文本文件的复制

    因此,使用FileReader和FileWriter进行文件复制,适用于纯文本文件,且不涉及特定字符编码的情况。 然而,直接使用FileReader和FileWriter进行大文件复制可能会效率低下,因为它们每次只能处理一个字符,没有利用...

Global site tag (gtag.js) - Google Analytics