Java InputStreamReader.read()方法

原文:https://www.studytonight.com/java-file-io/java-inputstreamreader-read-method

在本教程中,我们将学习 JavaInputStreamReader 类的read()方法。此方法用于从当前流中读取并返回单个字符。它是一个非静态方法,在 java.io 包中可用,只能使用类对象访问。

句法

下面是这个方法的语法声明。它不接受任何参数,并返回实际读取的字符,如果到达流的末尾,则返回-1。

public int read()

示例 1:在InputStreamReader中读取字符

在下面的例子中,我们实现了InputStreamReader 从文件中读取数据。首先,我们通过在构造器中传递文件路径,使用 FileInputStream 类创建了一个输入流。然后使用 read()方法,我们逐个读取每个字符,直到流到达末尾。当我们到达流的末尾时,它返回-1。

import java.io.FileInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
public class StudyTonight 
{
    public static void main(String args[])
    {
        try  {  
            InputStream stream = new FileInputStream("E:\\studytonight\\output.txt");  
            Reader reader = new InputStreamReader(stream);  
            int data = reader.read();  
            while (data != -1) {  
                System.out.print((char) data);  
                data = reader.read();  
            }  
        } catch (Exception e) {  
            System.out.print("Error: "+e.toString());
        }  
    }
}

你好,今晚学习

输出. txt

Hello Studytonight

示例 1:在InputStreamReader中读取字符

在本例中,我们从流中读取数据,并将其复制到数组中,然后打印该数据。此方法从当前流中读取并返回一个字符。

import java.io.FileInputStream;
import java.io.InputStreamReader;
public class StudyTonight 
{
    public static void main(String[] args) 
    {        
        try
        {
            char[] array = new char[50];
            FileInputStream fileStream = new FileInputStream("E://studytonight//output.txt");
            InputStreamReader input = new InputStreamReader(fileStream);
            input.read(array); 
            System.out.println(array);
        }
        catch (Exception e)
        {
            System.out.print("Error: "+e.toString());
        }
    }
}

1 2 3

输出. txt

1
2
3

结论

在本教程中,我们学习了 JavaInputStreamReader 类的read()方法,该方法从当前流中读取并返回单个字符,如果到达流读取字符的末尾,则返回-1。