个人名片:
🐼作者简介:一名大二在校生,喜欢编程🎋
🐻❄️个人主页🥇:小新爱学习.
🐼个人WeChat:hmmwx53
🕊️系列专栏:🖼️
- 零基础学Java——小白入门必备
- 重识C语言——复习回顾
- 计算机网络体系———深度详讲
- 微信小程序开发——实战开发
🐓每日一句:🍭我很忙,但我要忙的有意义!
IO流概述
Java.io 包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。
Java.io 包中的流支持很多种格式,比如:基本类型、对象、本地化字符集等等。
一个流可以理解为一个数据的序列。输入流表示从一个源读取数据,输出流表示向一个目标写数据。
Java 为 I/O 提供了强大的而灵活的支持,使其更广泛地应用到文件传输和网络编程中。
IO流的分类
一般情况下,我们说IO流的分类是按照数据类型来分的
字符流与字节流使用技巧:
若果数据通过Window自带的记事本本地软件打开,我们还可以读懂里面的内容就使用字符流,否则使用字节流。如果你不知道该使用哪种类型的流,就使用字节流。
字节流抽象基类
该流用于从文件读取数据,它的对象可以用关键字 new 来创建。
有多种构造方法可用来创建对象。
可以使用字符串类型的文件名来创建一个输入流对象来读取文件:
InputStream f = new FileInputStream("C:/java/hello");
也可以使用一个文件对象来创建一个输入流对象来读取文件。我们首先得使用 File() 方法来创建一个文件对象:
File f = new File("C:/java/hello");
InputStream in = new FileInputStream(f);
创建了InputStream对象,就可以使用下面的方法来读取流或者进行其他的流操作。
FileOutputStream :文件输出流用于将数据写入File
该类用来创建一个文件并向文件中写数据。
如果该流在打开文件进行输出前,目标文件不存在,那么该流会创建该文件。
有两个构造方法可以用来创建 FileOutputStream 对象。
使用字符串类型的文件名来创建一个输出流对象:
OutputStream f = new FileOutputStream("C:/java/hello")
也可以使用一个文件对象来创建一个输出流来写文件。我们首先得使用File()方法来创建一个文件对象:
File f = new File("C:/java/hello");
OutputStream fOut = new FileOutputStream(f);
创建OutputStream 对象完成后,就可以使用下面的方法来写入流或者进行其他的流操作。
使用字节输出流写数据的步骤
代码示例:
package com.ithmm_02;import java.io.FileOutputStream;
import java.io.IOException;public class InputStream {public static void main(String[] args) throws IOException {//创建字节输出流对象//FileOutStream(String name):创建文件输出流已指定的名称写入文件FileOutputStream fos = new FileOutputStream("Io\\fas.txt");/*1.调用系统功能创建文件2.创键字节输出流对象3.让字节输出流对象指向创建好的文件*///void write (int b),将指定字节写入文件输出流fos.write(97);fos.write(98);fos.write(99);fos.write(55);// void close()// 关闭此输出流并释放与此流有关的所有系统资源。fos.close();//fos.write(121);//Stream Closed}
}
方法名 | 说明 |
---|---|
void write(byte[] b) | 将 b.length 个字节写入此输出流。 |
void write(byte[] b, int off, int len) | 将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此输出流。 |
void write(int b) | 将指定 byte 写入此输出流。 |
package com.ithmm_02;import java.io.FileOutputStream;
import java.io.IOException;public class FileOutputStreamDemo02 {public static void main(String[] args) throws IOException {/*void write(byte[] b) 将 b.length 个字节写入此输出流。void write(byte[] b, int off, int len) 将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此输出流。void write(int b) 将指定 byte 写入此输出流。*///fileOutStream(String name),创键文件输出以指定的文件名写入文件夹FileOutputStream fos = new FileOutputStream("Io\\fos.txt");// this(var1 != null ? new File(var1) : null, false);
// FileOutputStream fos = new FileOutputStream(new File("Io\\fos.txt"));//FileOutStream (File file); 创键文件输出流以写入由指定的File对象表示的文件// FileOutputStream fos2 = new FileOutputStream( new File("Io\\fos.txt"));// void write(int b) 将指定 byte 写入此输出流。
// fos.write(97);
// fos.write(98);
// fos.write(99);//void write(byte[] b) 将 b.length 个字节写入此输出流。
// byte[] bys = {97,98,99, 32, 99};
// fos.write(bys);// fos.close();// void write(byte[] b) 将 b.length 个字节写入此输出流byte[] bys1 = "abcdefg".getBytes();// fos.write(bys1);//void write(byte[] b, int off, int len) 将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此输出流。fos.write(bys1,0,bys1.length);
//释放fos.close();}
}
finally:在异常处理是提供finally块;来执行所有清除操作,比如说IO流中的释放资源
特点:被finally控制的语句一定会执行,除非JVM退出
try{可能出现的异常代码;}catch(异常类名 变量名){异常的处理代码;}finally{执行所有的清除操作;
}
👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇
上一篇:友谊不需要评价
下一篇:给世界一个惊喜和承诺