Java FileInputStream
精华
小牛编辑
176浏览
2023-03-14
1 什么是Java FileInputStream
Java FileInputStream类从文件获取输入字节。它用于读取面向字节的数据(原始字节流),例如图像数据,音频,视频等。您还可以读取字符流数据。但是,为了读取字符流,建议使用FileReader类。
2 Java FileInputStream的语法
public class FileInputStream extends InputStream
3 Java FileInputStream的方法
方法 | 描述 |
---|---|
int available() | 用于返回可以从输入流读取的估计字节数。 |
int read() | 用于从输入流中读取数据字节。 |
int read(byte[] b) | 用于从输入流中读取最多b.length个数据字节。 |
int read(byte[] b, int off, int len) | 用于从输入流中读取最多len字节的数据。 |
long skip(long x) | 用于跳过并丢弃输入流中的x字节数据。 |
FileChannel getChannel() | 用于返回与文件输入流关联的唯一FileChannel对象。 |
FileDescriptor getFD() | 用于返回FileDescriptor对象。 |
protected void finalize() | 用于确保在没有更多对文件输入流的引用时调用close方法。 |
void close() | 用于关闭流。 |
void mark(int readlimit) | 此方法标记此输入流中的当前位置。 |
boolean markSupported() | 此方法测试此输入流是否支持mark和reset方法。 |
void reset() | 该方法将该流重新定位到在此输入流上最后调用mark方法的位置。 |
4 Java FileInputStream例子:读取一个字符
package cn.xnip;
/**
* 小牛知识库网: https://www.xnip.cn
*/
/**
* Java FileInputStream的例子
*/
import java.io.FileInputStream;
public class Demo {
public static void main(String args[]){
try{
FileInputStream fin=new FileInputStream("D:\\xnip\\test.txt");
int i=fin.read();
System.out.print((char)i);
fin.close();
}catch(Exception e){
System.out.println(e);
}
}
}
注意:在运行代码之前,需要创建一个名为"test.txt"的文本文件。内容如下:
Welcome to xnip.
执行完上述程序后,您将从文件中获得一个字符,该字符为87(字节形式)。要查看文本,您需要将其转换为字符。
W
5 Java FileInputStream例子:读取所有字符
package cn.xnip;
/**
* 小牛知识库网: https://www.xnip.cn
*/
/**
* Java FileInputStream的例子
*/
import java.io.FileInputStream;
public class Demo {
public static void main(String args[]){
try{
FileInputStream fin=new FileInputStream("D:\\xnip\\test.txt");
int i=0;
while((i=fin.read())!=-1){
System.out.print((char)i);
}
fin.close();
}catch(Exception e){
System.out.println(e);
}
}
}
输出结果为:
Welcome to xnip.