在 Java 中,IO(输入输出)主要用于读取数据(输入)和写入数据(输出)。下面我用最常见、最实用的方式给你讲,并配上例子。
InputStream / OutputStream(图片、视频、任何文件)Reader / Writer(文本文件)System.out.println("Hello Java IO");
import java.io.FileWriter;
import java.io.IOException;
public class WriteFileDemo {
public static void main(String[] args) {
try (FileWriter writer = new FileWriter("test.txt")) {
writer.write("Hello, Java IO!\n");
writer.write("这是一行中文");
} catch (IOException e) {
e.printStackTrace();
}
}
}
✅ try-with-resources 会自动关闭流
import java.io.FileOutputStream;
import java.io.IOException;
public class ByteWriteDemo {
public static void main(String[] args) throws IOException {
try (FileOutputStream fos = new FileOutputStream("a.txt")) {
fos.write("Hello".getBytes());
}
}
}
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFileDemo {
public static void main(String[] args) {
try (BufferedReader br = new BufferedReader(new FileReader("test.txt"))) {
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
import java.io.FileInputStream;
import java.io.IOException;
public class ByteReadDemo {
public static void main(String[] args) throws IOException {
try (FileInputStream fis = new FileInputStream("a.txt")) {
int data;
while ((data = fis.read()) != -1) {
System.out.print((char) data);
}
}
}
}
| 流 | 作用 |
|---|---|
BufferedReader |
按行读,效率高 |
BufferedWriter |
批量写 |
PrintWriter |
方便输出 |
import java.io.PrintWriter;
public class PrintDemo {
public static void main(String[] args) throws Exception {
try (PrintWriter pw = new PrintWriter("out.txt")) {
pw.println("第一行");
pw.println("第二行");
}
}
}
✅ 文本文件 → 用 Reader / Writer
✅ 图片/视频 → 用 InputStream / OutputStream
✅ 一定要关闭流(用 try-with-resources)
✅ 写文件注意异常 IOException
如果你愿意,我可以:
你现在是初学 Java 还是准备面试/做项目?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。