Java IO(输入输出)是Java编程语言中用于处理输入和输出操作的一组类和接口。Java IO提供了丰富的API来处理文件、网络、数据流等不同类型的输入输出操作。以下是一些Java IO的核心概念和类:### 核心概念1. **字节流**:用于处理字节
摘要:输入输出流 按操作 数据单位不同分为:流 字节流(8 bit) ,字符流(16 bit) 按数据流的 流向不同分为: 输入流,输出流 按流的 角色的不同分为:节点流,
输入/输出流
按操作 数据单位不同分为:流 字节流(8 bit) ,字符流(16 bit)
按数据流的 流向不同分为: 输入流,输出流
按流的 角色的不同分为:节点流,处理流

字节流
字节输出流OutputStream
java.io.OutputStream 抽象类是表示字节输出流的所有类的超类,将指定的字节信息写出到目的地。它定义了字节输出流的基本共性功能方法。
public void close() :关闭此输出流并释放与此流相关联的任何系统资源。
public void flush() :刷新此输出流并强制任何缓冲的输出字节被写出。
public void write(byte[] b) :将 b.length字节从指定的字节数组写入此输出流。
public void write(byte[] b, int off, int len) :从指定的字节数组写入 len字节,从偏移量 off开始输出到此输出流。
public abstract void write(int b) :将指定的字节输出流。
close方法,当完成流的操作时,必须调用此方法,释放系统资源
FileOutputStream
java.io.FileOutputStream 类是文件输出流,用于将数据写出到文件。
构造方法
public FileOutputStream(File file) :创建文件输出流以写入由指定的 File对象表示的文件。
public FileOutputStream(String name) : 创建文件输出流以指定的名称写入文件。
当你创建一个流对象时,必须传入一个文件路径。该路径下,如果没有这个文件,会创建该文件。如果有这个文件,会清空这个文件的数据。
清空文件写入
public static void main(String[] args) throws IOException {
String filePath = "d:" + File.separator + "test.txt";
File file = new File(filePath);
FileOutputStream outputStream = new FileOutputStream(file);
// 输出 a b c
outputStream.write(97);
outputStream.write(98);
outputStream.write(99);
// 输出换行1
outputStream.write(new String("\n").getBytes());
// 输出 “hello”
String s = "hello";
byte[] bytes = s.getBytes();
outputStream.write(bytes);
// 输出换行2
outputStream.write(10);
// 输出部分数组
outputStream.write(bytes, 1, bytes.length - 1);
/* output:
abc
hello
ello
*/
outputStream.close();
}
虽然参数为int类型四个字节,但是只会保留一个字节的信息写出。
流操作完毕后,必须释放系统资源,调用close方法。
追加文件写入
public FileOutputStream(File file, boolean append) : 创建文件输出流以写入由指定的 File对象表示的文件。
public FileOutputStream(String name, boolean append) : 创建文件输出流以指定的名称写入文件。
这两个构造方法,参数中都需要传入一个boolean类型的值, true 表示追加数据, false 表示清空原有数据。
写入换行
回车符 \r 和换行符 \n :
回车符:回到一行的开头(return)。
换行符:下一行(newline)。
系统中的换行:
Windows系统里,每行结尾是 回车+换行 ,即 \r\n ;
Unix系统里,每行结尾只有 换行 ,即 \n ;
Mac系统里,每行结尾是 回车 ,即 \r 。从 Mac OS X开始与Linux统一。
