Java中IO流文件读取、写入和复制的实例

 更新时间:2017年10月23日 09:32:51   作者:yyb_haoren  
下面小编就为大家带来一篇Java中IO流文件读取、写入和复制的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

//构造文件File类
File f=new File(fileName);

//判断是否为目录
f.isDirectory();

//获取目录下的文件名
String[] fileName=f.list();

//获取目录下的文件
File[] files=f.listFiles();

1、Java怎么读取文件

package com.yyb.file;

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

/*
 * 读取文件:
 * 1、找到指定的文件
 * 2、根据文件创建文件的输入流
 * 3、创建字节数组
 * 4、读取内容,放到字节数组里面
 * 5、关闭输入流
 */
public class FileRead {

	public static void main(String[] args) {
		// 构建指定文件
		File file = new File("E:" + File.separator + "hello.txt");
		InputStream in = null;
		try {
			// 根据文件创建文件的输入流
			in = new FileInputStream(file);
			// 创建字节数组
			byte[] data = new byte[1024];
			// 读取内容,放到字节数组里面
			in.read(data);
			System.out.println(new String(data));
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				// 关闭输入流
				in.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}

}

2、Java怎么写入文件

package com.yyb.file;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

/*
 * 写入文件:
 * 1、找到指定的文件
 * 2、根据文件创建文件的输出流
 * 3、把内容转换成字节数组
 * 4、向文件写入内容
 * 5、关闭输入流
 */
public class FileWriter {

	public static void main(String[] args) {
		// 构建指定文件
		File file = new File("E:" + File.separator + "hello.txt");
		OutputStream out = null;
		try {
			// 根据文件创建文件的输出流
			out = new FileOutputStream(file);
			String message = "我是好人。";
			// 把内容转换成字节数组
			byte[] data = message.getBytes();
			// 向文件写入内容
			out.write(data);
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				// 关闭输出流
				out.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}

}

3、Java怎么复制文件

<span style="font-size:18px;">package com.yyb.file;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
/*
 * 实现思路:
 * 1、构建源文件与目标文件
 * 2、源文件创建输入流,目标文件创建输出流
 * 3、创建字节数组
 * 4、使用循环,源文件读取一部分内容,目标文件写入一部分内容,直到写完所有内容
 * 5、关闭源文件输入流,目标文件输出流
 */
public class FileCopy {

	public static void main(String[] args) {
		// 构建源文件
		File file = new File("E:" + File.separator + "HelloWorld.txt");
		// 构建目标文件
		File fileCopy = new File("D:" + File.separator + "HelloWorld");
		InputStream in = null;
		OutputStream out = null;
		try {
			// 目标文件不存在就创建
			if (!(fileCopy.exists())) {
				fileCopy.createNewFile();
			}
			// 源文件创建输入流
			in = new FileInputStream(file);
			// 目标文件创建输出流
			out = new FileOutputStream(fileCopy, true);
			// 创建字节数组
			byte[] temp = new byte[1024];
			int length = 0;
			// 源文件读取一部分内容
			while ((length = in.read(temp)) != -1) {
				// 目标文件写入一部分内容
				out.write(temp, 0, length);
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				// 关闭文件输入输出流
				in.close();
				out.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}

}</span><span style="font-size: 24px;">
</span>

以上这篇Java中IO流文件读取、写入和复制的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 基于list stream: reduce的使用实例

    基于list stream: reduce的使用实例

    这篇文章主要介绍了list stream: reduce的使用实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • springboot接收JSON实现示例解析

    springboot接收JSON实现示例解析

    这篇文章主要为大家介绍了springboot如何接收JSON的实现示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • 详解Java中雪花算法的实现

    详解Java中雪花算法的实现

    雪花算法是一种分布式的id生成算法。原理是将long分成若干个区段分别管理。本文将利用Java简单的实现雪花算法,感兴趣的可以了解一下
    2022-12-12
  • java8 stream 操作map根据key或者value排序的实现

    java8 stream 操作map根据key或者value排序的实现

    这篇文章主要介绍了java8 stream 操作map根据key或者value排序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • java 简单的计算器程序实例代码

    java 简单的计算器程序实例代码

    这篇文章主要介绍了java 简单的计算器程序实例代码的相关资料,需要的朋友可以参考下
    2017-06-06
  • OpenJDK源码解析之System.out.println详解

    OpenJDK源码解析之System.out.println详解

    这篇文章主要介绍了OpenJDK源码解析之System.out.println详解,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • java客户端线上Apollo服务端的实现

    java客户端线上Apollo服务端的实现

    这篇文章主要介绍了java客户端线上Apollo服务端的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • SpringBoot3快速整合MyBatisPlus的示例代码

    SpringBoot3快速整合MyBatisPlus的示例代码

    本文介绍了快速整合MyBatis-Plus到Spring Boot 3项目中,包括依赖引入、代码生成器使用等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • Spring WebClient实战示例

    Spring WebClient实战示例

    本文主要介绍了Spring WebClient实战示例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Java并发读写锁ReentrantReadWriteLock 使用场景

    Java并发读写锁ReentrantReadWriteLock 使用场景

    ReentrantReadWriteLock是Java中一种高效的读写锁,适用于读多写少的并发场景,它通过允许多个线程同时读取,但在写入时限制为单线程访问,从而提高了程序的并发性和性能,本文给大家介绍Java并发读写锁ReentrantReadWriteLock 使用场景,感兴趣的朋友跟随小编一起看看吧
    2024-10-10

最新评论