Java-节点流(或文件流)

简介: 建立一个流对象,将已存在的一个文件加载进流。

读取文件

1.建立一个流对象,将已存在的一个文件加载进流。

  • FileReader fr = new FileReader(new File(“Test.txt”)); 2.创建一个临时存放数据的数组。
  • char[] ch = new char[1024]; 3.调用流对象的读取方法将流中的数据读入到数组中。
  • fr.read(ch);
  1. 关闭资源。
  • fr.close();
FileReader fr = null;
try {
fr = new FileReader(new File("c:\\test.txt"));
char[] buf = new char[1024];
int len;
while ((len = fr.read(buf)) != -1) {
System.out.print(new String(buf, 0, len));
}
} catch (IOException e) {
System.out.println("read-Exception :" + e.getMessage());
} finally {
if (fr != null) {
try {
fr.close();
} catch (IOException e) {
System.out.println("close-Exception :" + e.getMessage());
}
}
}

写入文件

1.创建流对象,建立数据存放文件

  • FileWriter fw = new FileWriter(new File(“Test.txt”)); 2.调用流对象的写入方法,将数据写入流
  • fw.write(“atguigu-songhongkang”); 3.关闭流资源,并将流中的数据清空到文件中。
  • fw.close();
FileWriter fw = null;
try {
fw = new FileWriter(new File("Test.txt"));
fw.write("atguigu-songhongkang");
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fw != null)
try {
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}

注意点

  • 定义文件路径时,注意:可以用“/”或者“\”。
  • 在写入一个文件时,如果使用构造器FileOutputStream(file),则目录下有同名文件将被覆盖。
  • 如果使用构造器FileOutputStream(file,true),则目录下的同名文件不会被覆盖,在文件内容末尾追加内容。
  • 在读取文件时,必须保证该文件已存在,否则报异常。
  • 字节流操作字节,比如:.mp3,.avi,.rmvb,mp4,.jpg,.doc,.ppt
  • 字符流操作字符,只能操作普通文本文件。最常见的文本文件:.txt,.java,.c,.cpp 等语言的源代码。尤其注意.doc,excel,ppt这些不是文本文件。

复制文件

long start=System.currentTimeMillis();
String secPath="视频路径";
String destPath="视频复制路径";
copyFile(secPath,destPath);
long end=System.currentTimeMillis();
System.out.println("复制操作花费的时间为"+(end-start));


相关文章
|
5月前
|
Java
24. 两两交换链表中的节点 -- 力扣 --JAVA
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。
28 0
|
3月前
|
Java
LeetCode题解- 两两交换链表中的节点-Java
两两交换链表中的节点-Java
13 0
|
4月前
|
Rust 索引
Rust 编程小技巧摘选(6)
Rust 编程小技巧摘选(6)
46 1
Rust 编程小技巧摘选(6)
|
4月前
|
算法 Java C++
Java每日一练(20230424) 二叉树中序遍历、交换链表节点、不同子序列
Java每日一练(20230424) 二叉树中序遍历、交换链表节点、不同子序列
37 0
Java每日一练(20230424) 二叉树中序遍历、交换链表节点、不同子序列
|
4月前
|
Java
2487. 从链表中移除节点 --力扣 --JAVA
给你一个链表的头节点 head 。 移除每个右侧有一个更大数值的节点。 返回修改后链表的头节点 head 。
32 0
|
9月前
|
前端开发 JavaScript Java
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(五)
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(五)
|
9月前
|
SQL Java 数据库
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(四)
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(四)
|
9月前
|
前端开发 druid Java
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(三)
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(三)
|
9月前
|
XML JSON 前端开发
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(二)
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(二)
|
9月前
|
XML 前端开发 Java
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(一)
[Java]SpringMVC 学习笔记(动力节点王鹤王妈妈2020)(一)