Java 中的 FileInputStream 類可用於以字節序列的形式從文件中讀取數據。 FileInputStream 用於讀取原始字節流,例如圖像數據。要讀取字符流,請考慮使用 FileReader。
InputStream 類的 read() 方法從輸入流中讀取一個字節的數據。返回下一個數據字節,如果到達文件末尾則返回 -1,如果發生 I/O 錯誤則拋出異常。請參閱程序。
用法:
public abstract int read()
返回值:此方法返回數據的下一個字節,如果到達流的末尾,則返回 -1。
異常:IOException− 如果發生 I/O 錯誤。
How to invoke the read() method?
按照以下步驟使用 FileInputStream 從文件中讀取數據,這是 FileInputClass 的最後通牒
第 1 步:將文件附加到 FileInputStream,因為這將使我們能夠從文件中讀取數據,如下所示:
FileInputStream fileInputStream =new FileInputStream(“file.txt”);
第 2 步:現在,要從文件中讀取數據,我們應該從 FileInputStream 中讀取數據,如下所示:
ch=fileInputStream.read();
步驟 3(a):當沒有更多數據可供進一步讀取時,read() 方法返回 -1;
步驟 3(b):然後,我們應該將監視器附加到輸出流。為了顯示數據,我們可以使用 System.out.print。
System.out.print(ch);
實現方式:
原始文件內容:(“file.txt”)
GeeksforGeeks is a computer science portal
Java
// Java program to demonstrate the working
// of the FileInputStream read() method
import java.io.File;
import java.io.FileInputStream;
public class abc {
public static void main(String[] args) {
// Creating file object and specifying path
File file = new File("file.txt");
try {
FileInputStream input= new FileInputStream(file);
int character;
// read character by character by default
// read() function return int between 0 and 255.
while ((character = input.read()) != -1) {
System.out.print((char)character);
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
輸出
GeeksforGeeks is a computer science portal
在while循環中不使用-1讀取文件
我們將在此使用 available() 方法的概念。 available() 方法用於返回還有多少字節要讀取。我們將使用 read() 方法打印字符,直到剩下 0 個字符需要讀取。
示例:原始文件內容:(“file.txt”)
GeeksforGeeks
Java
// Java program to read a file
// without using -1 in while loop
import java.io.File;
import java.io.FileInputStream;
public class abc {
public static void main(String[] args) {
// Creating file object and specifying path
File file = new File("file.txt");
try {
FileInputStream input= new FileInputStream(file);
int character;
// read character by character by default
// read() function return int between 0 and 255.
while (input.available()!=0) {
character = input.read();
System.out.print((char)character);
}
input.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
輸出
GeeksforGeeks
相關用法
- Java FileInputStream close()用法及代碼示例
- Java FileInputStream getFD()用法及代碼示例
- Java FileInputStream finalize()用法及代碼示例
- Java FileInputStream skip()用法及代碼示例
- Java FileInputStream getChannel()用法及代碼示例
- Java FileInputStream available()用法及代碼示例
- Java Java.io.FileInputStream用法及代碼示例
- Java FileInputStream和ObjectInputStream的區別用法及代碼示例
- Java FileInputStream和FileReader的區別用法及代碼示例
- Java Reader read(char[])用法及代碼示例
- Java Reader read(char[], int, int)用法及代碼示例
- Java Reader read(CharBuffer)用法及代碼示例
- Java Reader read()用法及代碼示例
- Java CharArrayReader read()用法及代碼示例
- Java CharArrayReader read(CharBuffer)用法及代碼示例
- Java CharArrayReader read(char[], int, int)用法及代碼示例
- Java CharArrayReader read(char[])用法及代碼示例
- Java StringReader read(char[])用法及代碼示例
- Java StringReader read(char[], int, int)用法及代碼示例
- Java StringReader read(CharBuffer)用法及代碼示例
- Java StringReader read()用法及代碼示例
- Java PushbackReader read(char, int, int)用法及代碼示例
- Java PushbackReader read()用法及代碼示例
- Java ObjectInputStream read()用法及代碼示例
注:本文由純淨天空篩選整理自akshitsaxenaa09大神的英文原創作品 Java FileInputStream read() Method with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。