如何暂时关闭 java gwt 服务器端的缓冲读取器



我正在使用带有GWT框架的Java在我的应用程序上读取CSV文件。 有没有办法暂时关闭缓冲阅读器?

我的意思是,当我找到我要查找的特定行时,有没有办法停止读取CSV文件?

bufferedReader.close(( 会导致错误。 它说服务器上的错误,因为流已关闭。bufferedReader.reset(( 也不起作用,它说它不受支持。

请帮忙。提前谢谢。

编辑。

while ((line = br.readLine()) != accountColumn ) {
if (line.equals(accountColumn)) {
    System.out.println(line);
    checker = true;
    String[] columns = line.split(cvsSplitBy);
    int totalColumns = columns.length;
    int col = 0;
    while (col < totalColumns) {
        log.append(columns[col] + "n");
        col++;
    }
    JOptionPane.showMessageDialog(frame,"SAME COLUMNS DETECTED, READY FOR UPLOAD");

输出。

LEDGER,EXTRACT_NAME,COUNTRY,ENTITY,TAX_CATEGORY,TAX_SUB_CATEGORY,TAX_ACCOUNT_TYPE,TAX_ACCOUNT,ACCUNT_TYPE,TAX_DRIVER,USE_FLAG,INPUT_ID,INPUT_NAME,DEL_FLAG
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564
1,456,465,46,5456,456,4,45,5656456,56,564,6546,654,6564

它找到我正在寻找的特定行,但继续阅读其余部分

不能暂时关闭缓冲区读取器。关闭它时可能会收到异常,因为您仍在 while 循环中,条件行 = br.readLine(( 将再次执行并抛出异常。

您应该使用 break 退出 while 循环,然后关闭缓冲区。

最新更新