为txt文件重新使用inputStream(在线) - Java

时间:2017-03-02 15:11:39

标签: java inputstream

我的程序从在线txt文件中读取数据。这种变化很多次。

我使用inputStream来读取数据,并将其放在ArrayList中。工作良好。 但我使用相同的输入流相同的方法来刷新arraylist。 我得到了相同的数据。

类别:

public class getGameData {

static InputStream is;

public static ArrayList<String> array = new ArrayList<String>();
public static ArrayList<String> getGameData(String file) {

    URLConnection con;

    try {
        URL url = new URL("http://timme7893.nl/CardGame/GameData.txt");
        con = url.openConnection();
        con.connect();
        is =con.getInputStream();           

        BufferedReader br = new BufferedReader(new InputStreamReader(is));

        String line = null;
        while ((line = br.readLine()) != null) {
           // System.out.println(line);
            array.add(line);
        }
        is.close();
        is = null;
        br.close();         
    } catch (IOException e) {
        e.printStackTrace();
    }

    return array;
}

我的问题:如何清除或刷新输入流,以便我的ArrayList获得良好的数据?

1 个答案:

答案 0 :(得分:0)

首先,清除列表。 list.clear();

或标记输入流然后重置。 is.mark(0); is.reset();

还要分析这一行:is =con.getInputStream();它将始终获得相同的输入流。

也作为提示,在finally块中关闭你的连接。