java Stream File IO

Java Stream,File,IO

Java.io 包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。
Java.io 包中的流支持很多种格式,比如:基本类型、对象、本地化字符集等等。
一个流可以理解为一个数据的序列。输入流表示从一个源读取数据,输出流表示向一个目标写数据。
Java 为 I/O 提供了强大的而灵活的支持,使其更广泛地应用到文件传输和网络编程中。

从控制台读取输入

读取字符
  • 使用BufferedReader 类的read()方法
import java.io.*

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
char c = (char)br.read();
读取字符串
  • 使用BufferedReader 类的readLine()方法
import java.io.*

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();

控制台输出

void write(int byteval);

System.out.write('\n');

IO流与文件操作

在这里插入图片描述- 其中最重要的两个流是 FileInputStream,FileOutputStream

FileInputStream
  • 使用字符串类型的文件名来创建一个输入流对象
  • 也可以使用一个文件对象来创建一个输出流来写文件。我们首先得使用File()方法来创建一个文件对象
InputStream f = new FileInputStream("java/hello");
//or
File f = new File("java/hello");
InputStream out = new FileInputStream(f);
方法描述
public void close()throws IOException{}关闭此文件输入流并释放与此流有关的所有系统资源。抛出IOException异常。
protected void finalize()throws IOException {}这个方法清除与该文件的连接。确保在不再引用文件输入流时调用其 close 方法。抛出IOException异常。
public int read(int r)throws IOException{}这个方法从 InputStream 对象读取指定字节的数据。返回为整数值。返回下一字节数据,如果已经到结尾则返回-1。
public int read(byte[] r) throws IOException{}这个方法从输入流读取r.length长度的字节。返回读取的字节数。如果是文件结尾则返回-1。
public int available() throws IOException{}返回下一次对此输入流调用的方法可以不受阻塞地从此输入流读取的字节数。返回一个整数值。
FileOutputStream
  • 使用字符串类型的文件名来创建一个输出流对象
  • 也可以使用一个文件对象来创建一个输出流来写文件。我们首先得使用File()方法来创建一个文件对象
OutputStream f = new FileOutputStream("java/hello");
//or
File f = new File("java/hello");
OutputStream f = new FileOutputStream(f);
方法描述
public void close() throws IOException{}关闭此文件输入流并释放与此流有关的所有系统资源。抛出IOException异常。
protected void finalize()throws IOException {}这个方法清除与该文件的连接。确保在不再引用文件输入流时调用其 close 方法。抛出IOException异常。
public void write(int w)throws IOException{}这个方法把指定的字节写到输出流中。
public void write(byte[] w)把指定数组中w.length长度的字节写到OutputStream中。

FIle类

序号方法描述
1public String getName()返回由此抽象路径名表示的文件或目录的名称。
2public String getParent()返回此抽象路径名的父路径名的路径名字符串,如果此路径名没有指定父目录,则返回 null。
3public File getParentFile()返回此抽象路径名的父路径名的抽象路径名,如果此路径名没有指定父目录,则返回 null。
4public String getPath()将此抽象路径名转换为一个路径名字符串。
5public boolean isAbsolute()测试此抽象路径名是否为绝对路径名。
6public String getAbsolutePath()返回抽象路径名的绝对路径名字符串。
7public boolean canRead()测试应用程序是否可以读取此抽象路径名表示的文件。
8public boolean canWrite()测试应用程序是否可以修改此抽象路径名表示的文件。
9public boolean exists()测试此抽象路径名表示的文件或目录是否存在。
10public boolean isDirectory()测试此抽象路径名表示的文件是否是一个目录。
11public boolean isFile()测试此抽象路径名表示的文件是否是一个标准文件。
12public long lastModified()返回此抽象路径名表示的文件最后一次被修改的时间。
13public long length()返回由此抽象路径名表示的文件的长度。
14public boolean createNewFile() throws IOException当且仅当不存在具有此抽象路径名指定的名称的文件时,原子地创建由此抽象路径名指定的一个新的空文件。
15public boolean delete()删除此抽象路径名表示的文件或目录。
16public void deleteOnExit()在虚拟机终止时,请求删除此抽象路径名表示的文件或目录。
17public String[] list()返回由此抽象路径名所表示的目录中的文件和目录的名称所组成字符串数组。
18public String[] list(FilenameFilter filter)返回由包含在目录中的文件和目录的名称所组成的字符串数组,这一目录是通过满足指定过滤器的抽象路径名来表示的。
19public File[] listFiles()返回一个抽象路径名数组,这些路径名表示此抽象路径名所表示目录中的文件。
20public File[] listFiles(FileFilter filter)返回表示此抽象路径名所表示目录中的文件和目录的抽象路径名数组,这些路径名满足特定过滤器。
21public boolean mkdir()创建此抽象路径名指定的目录。
22public boolean mkdirs()创建此抽象路径名指定的目录,包括创建必需但不存在的父目录。
23public boolean renameTo(File dest)重新命名此抽象路径名表示的文件。
24public boolean setLastModified(long time)设置由此抽象路径名所指定的文件或目录的最后一次修改时间。
25public boolean setReadOnly()标记此抽象路径名指定的文件或目录,以便只可对其进行读操作。
26public static File createTempFile(String prefix, String suffix, File directory) throws IOException在指定目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称。
27public static File createTempFile(String prefix, String suffix) throws IOException在默认临时文件目录中创建一个空文件,使用给定前缀和后缀生成其名称。
28public int compareTo(File pathname)按字母顺序比较两个抽象路径名。
29public int compareTo(Object o)按字母顺序比较抽象路径名与给定对象。
30public boolean equals(Object obj)测试此抽象路径名与给定对象是否相等。
31public String toString()返回此抽象路径名的路径名字符串。

FileReader类

创建方法

FileReader(File file)
FileReader(FileDescriptor fd)
FileReader(String fileName)
方法描述
public int read() throws IOException读取单个字符,返回一个int型变量代表读取到的字符
public int read(char [] c, int offset, int len)读取字符到c数组,返回读取到字符的个数

FileWriter类

  • 创建方法
FileWriter(File file)

FileWriter(File file,boolean append)

FileWriter(FileDescriptor fd)

FileWriter(String fileName, boolean append)
  • 关于append参数,为true时,将字节写入文件末尾处,相当于追加信息;否则写入在文件开始处。
方法描述
public void write(int c) throws IOException写入单个字符c。
public void write(char [] c, int offset, int len)写入字符数组中开始为offset长度为len的某一部分。
public void write(String s, int offset, int len)写入字符串中开始为offset长度为len的某一部分。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值