`
hwfantasy
  • 浏览: 20914 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

文件的简单操作(续):IO流的应用

阅读更多
今天继续学习了文件的简单操作,而今天得内容主要集中在I/O流的操作。
1.java.io.FileInputStream
  它是从文件系统中的某个文件中获得输入字节,从而对这些数据进行操作的类。类本身只是简单地重写那些将所有请求传递给所包含输入流的InputStream的所有方法。
2.java.io.FileOutputStream
  文件输出流是用于将数据写入File或FileDescriptor的输出流,而且某些平台一次只允许一个 FileOutputStream(或其他文件写入对象)打开文件进行写入。
3.IO流的简单应用:文件复制器
  1复制文件的类
/**
	 * 复制文件的方法
	 * @param oPath 原始文件位置路径
	 * @param aPath 目标文件位置路径
	 * @return 返回0则表示给予的地址有问题,返回1则正常
	 */
	public int copy(String oPath,String aPath){
		
		//判断给予的元素文件路径是否是文件夹,是否存在
		java.io.File file = new java.io.File(oPath);
		boolean b = file.isDirectory();
		if(b){
			System.out.println("错误!给予的路径为文件夹");
			return 0;
		}
		Boolean b1 = file.exists();
		if(b1){
			System.out.println("错误!给予的路径不存在");
			return 0;
		}
		try {
			//根据原始文件路径创建文件输入流对象
			java.io.FileInputStream fis = new java.io.FileInputStream(oPath);
			//根据目标文件路径创建文件输出流对象
			java.io.FileOutputStream fos = new java.io.FileOutputStream(aPath);
			
			//从fis中读取一个字节
			int data = fis.read();
			
			//如果fis中还有数据,则反复读取并输入给fos
			while(data!=-1){
				fos.write(data);
				data = fis.read();
			}
			System.out.println("能够复制,正在复制...");
			//刷新此输出流并强制写出所有缓冲的输出字节
			fos.flush();
			//关闭输出与输入流
			fis.close();
			fos.close();
			
		} catch (Exception e) {
			e.printStackTrace();
		}	
		return 1;
	}

  2用于检测的类
public static void main(String[] args) {

		//创建复制文件类的对象
		copyFile cf = new copyFile();
		//原始文件与目标文件的路径
		String oPath = "D:\\hw\\workspace.rar";
		String aPath = "D:\\hw\\workspace1.rar";
		
		//使用复制的方法
		cf.copy(oPath, aPath);

	}
分享到:
评论

相关推荐

    java源码包---java 源码 大量 实例

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包2

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    JAVA上百实例源码以及开源项目

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包3

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包4

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    JAVA上百实例源码以及开源项目源代码

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    最近很火的分布式数据库 RethinkDB.zip

    RethinkDB 设计用来存储 JSON 文档的分布式数据库,可通过简单操作实现多机分布式存储。支持表的联合和分组查询。什么是RethinkDB?RethinkDB 是从头打造的第一个开源、可扩展的JSON数据库,用于搭建实时网页。全新...

    python入门到高级全栈工程师培训 第3期 附课件代码

    09 目录及文件操作 第4章 01 上节课复习 02 创建用户相关的文件 03 用户增删该查及组相关操作 04 对文件的权限管理 05 对目录的权限管理 06 权限管理补充 07 属主属组及基于数字的权限管理 第5章 01 上节课复习 ...

Global site tag (gtag.js) - Google Analytics