Java IO的一般使用模式

本文涉及的产品
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
大数据开发治理平台 DataWorks,不限时长
简介: Java IO的一般使用模式


以前对Java IO中的装饰模式搞得稀里糊涂的,现在整理下它的使用方法如下:

文本文件的读写:

写文件
输出的一般模式:
PrintWriter
→BufferedWriter(可选项)
→FileWriter
PrintWriter out = new PrintWriter(file);
或者
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(file)));

创建添加式文本输出
PrintWriter out = new PrintWriter(file,true);
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(file,true)));

下面看一个例子:

package com.tzy.file;

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class TextFileWriter {
   
    public static void main(String[] args) {
   
        short age = 24;
        String name = "tanzhenyu";
        String gender = "male";
        try {
   
            PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("DataWriter.txt",true)));
            out.println(name);
            out.println(gender);
            out.println(age);
            out.close();
        } catch (IOException e) {
   
            System.out.println(e);
        }
        System.out.println("Success!");
    }
}

读文件
输入的一般模式:
BufferedReader
→FileReader
BufferedReader in = new BufferedReader(new FileReader(file));

下面看一个例子:

package com.tzy.file;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;

public class TextFileReader {
public static void main(String[] args) {
String filePath = "E:\EclipseWorkSpace\javaLang\";
String fileName = "DataWriter.txt";
try {
File myFile = new File(filePath,fileName);
BufferedReader in = new BufferedReader(new FileReader(myFile));
String line = in.readLine();
while (line != null) {
System.out.println(line);
line = in.readLine();
}
in.close();
} catch (IOException e) {
System.out.println(e);
}
}
}

二进制文件的读写:

输入
进行二进制文件输入操作的一般模式为:
DataOutputStream
→BufferedOutputStream(可选项;推荐使用)
→FileOutputStream

DataOutputStream out = new DataoutputStream(new BufferedOutputStream(new FileOutputStream(file)));

输入
进行二进制文件读入操作的一般模式为:
DataInputStream
→BufferedInputStream(可选项;推荐使用)
→FileInputStream

DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream(file)));

目录
相关文章
|
1月前
|
Java 大数据
解析Java中的NIO与传统IO的区别与应用
解析Java中的NIO与传统IO的区别与应用
|
6天前
|
Java Android开发
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
24 1
|
11天前
|
存储 缓存 Java
15 Java IO流(File类+IO流+字节流+字符流+字节编码)
15 Java IO流(File类+IO流+字节流+字符流+字节编码)
34 3
|
19天前
|
安全 Java Linux
(七)Java网络编程-IO模型篇之从BIO、NIO、AIO到内核select、epoll剖析!
IO(Input/Output)方面的基本知识,相信大家都不陌生,毕竟这也是在学习编程基础时就已经接触过的内容,但最初的IO教学大多数是停留在最基本的BIO,而并未对于NIO、AIO、多路复用等的高级内容进行详细讲述,但这些却是大部分高性能技术的底层核心,因此本文则准备围绕着IO知识进行展开。
|
1月前
|
设计模式 监控 Java
Java中的并发编程模式与最佳实践
随着多核处理器的普及,充分利用并发和多线程成为提高软件性能的关键。Java语言通过其丰富的并发API提供了强大的支持,使得开发者能够构建高效、可靠的并发应用程序。本文深入探讨了Java并发编程的核心概念、设计模式以及在实际开发中的最佳实践,旨在帮助读者更好地理解和掌握Java并发编程,从而编写出更加高效、稳定的应用程序。
|
1月前
|
设计模式 Java 开发者
Java中的异常处理与断路器模式
Java中的异常处理与断路器模式
|
19天前
|
存储 Java Unix
(八)Java网络编程之IO模型篇-内核Select、Poll、Epoll多路复用函数源码深度历险!
select/poll、epoll这些词汇相信诸位都不陌生,因为在Redis/Nginx/Netty等一些高性能技术栈的底层原理中,大家应该都见过它们的身影,接下来重点讲解这块内容。
|
1月前
|
存储 安全 Java
【Java】已解决java.io.ObjectStreamException异常
【Java】已解决java.io.ObjectStreamException异常
19 1
|
1月前
|
设计模式 安全 NoSQL
Java面试题:设计一个线程安全的单例模式,并解释其内存占用和垃圾回收机制;使用生产者消费者模式实现一个并发安全的队列;设计一个支持高并发的分布式锁
Java面试题:设计一个线程安全的单例模式,并解释其内存占用和垃圾回收机制;使用生产者消费者模式实现一个并发安全的队列;设计一个支持高并发的分布式锁
40 0
|
1月前
|
存储 设计模式 监控
Java面试题:如何在不牺牲性能的前提下,实现一个线程安全的单例模式?如何在生产者-消费者模式中平衡生产和消费的速度?Java内存模型规定了变量在内存中的存储和线程间的交互规则
Java面试题:如何在不牺牲性能的前提下,实现一个线程安全的单例模式?如何在生产者-消费者模式中平衡生产和消费的速度?Java内存模型规定了变量在内存中的存储和线程间的交互规则
30 0