JavaSE IO流常用方法有哪些

发布时间:2022-10-17 16:13:40 作者:iii
来源:亿速云 阅读:160

JavaSE IO流常用方法有哪些

目录

  1. 引言
  2. IO流概述
  3. 字节流
  4. 字符流
  5. 文件操作
  6. 缓冲流
  7. 转换流
  8. 数据流
  9. 对象流
  10. 打印流
  11. 序列流
  12. 管道流
  13. 标准输入输出流
  14. 总结

引言

在Java编程中,IO流(输入输出流)是处理数据输入输出的重要工具。无论是读取文件、网络数据传输,还是与用户交互,IO流都扮演着至关重要的角色。Java提供了丰富的IO流类库,涵盖了字节流、字符流、缓冲流、转换流等多种类型。本文将详细介绍Java SE中常用的IO流及其方法,帮助开发者更好地理解和应用这些工具。

IO流概述

IO流是Java中用于处理输入输出的抽象概念。根据数据的传输方向,IO流可以分为输入流(InputStream/Reader)和输出流(OutputStream/Writer)。根据数据的处理方式,IO流又可以分为字节流和字符流。

字节流

InputStream

InputStream是所有字节输入流的基类,提供了读取字节数据的基本方法。

常用方法

示例代码

InputStream inputStream = new FileInputStream("example.txt");
int data;
while ((data = inputStream.read()) != -1) {
    System.out.print((char) data);
}
inputStream.close();

OutputStream

OutputStream是所有字节输出流的基类,提供了写入字节数据的基本方法。

常用方法

示例代码

OutputStream outputStream = new FileOutputStream("example.txt");
byte[] data = "Hello, World!".getBytes();
outputStream.write(data);
outputStream.close();

字符流

Reader

Reader是所有字符输入流的基类,提供了读取字符数据的基本方法。

常用方法

示例代码

Reader reader = new FileReader("example.txt");
int data;
while ((data = reader.read()) != -1) {
    System.out.print((char) data);
}
reader.close();

Writer

Writer是所有字符输出流的基类,提供了写入字符数据的基本方法。

常用方法

示例代码

Writer writer = new FileWriter("example.txt");
writer.write("Hello, World!");
writer.close();

文件操作

File类

File类用于表示文件和目录路径名的抽象表示,提供了文件和目录的操作方法。

常用方法

示例代码

File file = new File("example.txt");
if (file.exists()) {
    System.out.println("File exists: " + file.getName());
} else {
    System.out.println("File does not exist.");
}

RandomAccessFile

RandomAccessFile类允许随机访问文件内容,既可以读取也可以写入。

常用方法

示例代码

RandomAccessFile raf = new RandomAccessFile("example.txt", "rw");
raf.seek(raf.length());
raf.write("Hello, World!".getBytes());
raf.close();

缓冲流

BufferedInputStream

BufferedInputStreamInputStream提供了缓冲功能,可以提高读取效率。

常用方法

示例代码

BufferedInputStream bis = new BufferedInputStream(new FileInputStream("example.txt"));
int data;
while ((data = bis.read()) != -1) {
    System.out.print((char) data);
}
bis.close();

BufferedOutputStream

BufferedOutputStreamOutputStream提供了缓冲功能,可以提高写入效率。

常用方法

示例代码

BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("example.txt"));
byte[] data = "Hello, World!".getBytes();
bos.write(data);
bos.close();

BufferedReader

BufferedReaderReader提供了缓冲功能,可以提高读取效率。

常用方法

示例代码

BufferedReader br = new BufferedReader(new FileReader("example.txt"));
String line;
while ((line = br.readLine()) != null) {
    System.out.println(line);
}
br.close();

BufferedWriter

BufferedWriterWriter提供了缓冲功能,可以提高写入效率。

常用方法

示例代码

BufferedWriter bw = new BufferedWriter(new FileWriter("example.txt"));
bw.write("Hello, World!");
bw.newLine();
bw.write("This is a new line.");
bw.close();

转换流

InputStreamReader

InputStreamReader是字节流到字符流的桥梁,可以将字节流转换为字符流。

常用方法

示例代码

InputStreamReader isr = new InputStreamReader(new FileInputStream("example.txt"));
int data;
while ((data = isr.read()) != -1) {
    System.out.print((char) data);
}
isr.close();

OutputStreamWriter

OutputStreamWriter是字符流到字节流的桥梁,可以将字符流转换为字节流。

常用方法

示例代码

OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("example.txt"));
osw.write("Hello, World!");
osw.close();

数据流

DataInputStream

DataInputStream允许应用程序以与机器无关的方式从底层输入流中读取基本Java数据类型。

常用方法

示例代码

DataInputStream dis = new DataInputStream(new FileInputStream("example.dat"));
int intValue = dis.readInt();
double doubleValue = dis.readDouble();
String stringValue = dis.readUTF();
dis.close();

DataOutputStream

DataOutputStream允许应用程序以与机器无关的方式向底层输出流中写入基本Java数据类型。

常用方法

示例代码

DataOutputStream dos = new DataOutputStream(new FileOutputStream("example.dat"));
dos.writeInt(123);
dos.writeDouble(123.456);
dos.writeUTF("Hello, World!");
dos.close();

对象流

ObjectInputStream

ObjectInputStream用于从输入流中读取对象。

常用方法

示例代码

ObjectInputStream ois = new ObjectInputStream(new FileInputStream("example.dat"));
Object obj = ois.readObject();
ois.close();

ObjectOutputStream

ObjectOutputStream用于将对象写入输出流。

常用方法

示例代码

ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("example.dat"));
oos.writeObject(new MyClass());
oos.close();

打印流

PrintStream

PrintStream为其他输出流添加了功能,使它们能够方便地打印各种数据值表示形式。

常用方法

推荐阅读:
  1. javaSE知识点有哪些
  2. javase和java有哪些区别

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

javase io

上一篇:Python字符串常用方法分为哪些类型

下一篇:怎么解决win10系统开机黑屏的现象

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》