我该如何解决这个问题? java.io.IOException:流已关闭

How do I solve this? java.io.IOException: Stream Closed

请帮助我。我正在使用我的停止词代码,使用 FileInputStream 但我收到一条错误消息 java.io.IOException: Stream Closed。我正在关注 YouTube 中的教程:https://www.youtube.com/watch?v=ckQUlI7x7hI 和他的代码 运行 没有错误。

代码如下:

    import java.io.FileInputStream;
    import java.util.ArrayList;

    public class DataCleaning {


    public static void main(String[] args) {

        ArrayList sw = new ArrayList<>();

        try{
            FileInputStream x = new FileInputStream("/Users/Dan/Desktop/DATA/stopwords.txt");

            byte b[] = new byte[x.available()];
            x.read(b);
                x.close();

                String data[] = new String(b).split("\n");

            for(int i = 0; i < data.length; i++)
            {
                sw.add(data[i].trim());
            }
             FileInputStream xx = new FileInputStream("/Users/Dan/Desktop/DATA/cleandata.txt");

            byte bb[] = new byte[x.available()];
            xx.read(bb);
                xx.close();

                String dataa[] = new String(bb).split("\n");



                for(int i = 0; i < dataa.length; i++)

            {
                String file = "";
                String s[] = dataa[i].split("\s");
                for(int j = 0; j < s.length; i++)
                {
                    if(sw.contains(s[j].trim().toLowerCase()))
                    {
                        file=file + s[j] + " ";
                    }

                }
                System.err.println(file + "\n");
            }

        } catch(Exception a){
            a.printStackTrace();
        }

    }

}

这是我 运行 代码时的错误:

java.io.IOException: Stream Closed
at java.io.FileInputStream.available(Native Method)
at datacleaning.DataCleaning.main(DataCleaning.java:28)

您必须修复 bb 初始化:

byte bb[] = new byte[xx.available()];

xx.available() 而不是 x.available()