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

作者:yyb_haoren 时间:2023-08-12 03:23:29 

//构造文件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>

来源:http://blog.csdn.net/qq_31360175/article/details/49407005

标签:Java,IO流文件,读取,写入,复制
0
投稿

猜你喜欢

  • C#使用正则表达式

    2021-11-16 18:33:57
  • C#实现绘制浮雕图片效果实例

    2023-10-10 04:34:04
  • 关于jdk9、jdk10、jdk11、jdk12、jdk13新特性说明

    2021-07-19 17:06:34
  • Android studio4.1更新后出现的问题详解

    2022-12-06 03:22:54
  • Java删除二叉搜索树的任意元素的方法详解

    2021-10-04 12:27:26
  • c#继承与多态使用示例

    2021-11-24 16:48:33
  • window下安装和配置maven环境

    2021-06-13 14:32:16
  • 在C#中根据HardwareID获取驱动程序信息的实现代码

    2023-08-04 08:15:31
  • java8 统计字符串字母个数的几种方法总结(推荐)

    2023-09-25 17:37:48
  • Java 实现分布式服务的调用链跟踪

    2023-11-25 10:24:55
  • Java Eclipse进行断点调试的方法

    2023-06-14 06:31:27
  • java中成员变量与局部变量区别分析

    2023-07-12 13:45:21
  • Spring @Async无法实现异步的解决方案

    2021-10-22 13:32:46
  • Android编程之分辨率处理相关代码段合集

    2022-09-28 07:03:16
  • Java面向对象之猜拳游戏

    2022-10-29 21:26:45
  • 分析Android多主题颜色的相关问题

    2023-01-08 09:55:58
  • Kotlin LinearLayout与RelativeLayout布局使用详解

    2021-12-06 02:07:30
  • C#使用iTextSharp将PDF转成文本的方法

    2022-05-03 16:59:48
  • java中对字符串每个字符统计的方法

    2023-09-23 13:53:16
  • java实现马踏棋盘算法(骑士周游问题)

    2022-03-17 20:29:46
  • asp之家 软件编程 m.aspxhome.com