通过从mysql数据库中检索来打印文本文件的内容

时间:2014-08-15 15:27:43

标签: java mysql file

我在mysql数据库中存储了多个文本文件,并且需要检索它们以计算每个程序的每个结尾的一些功能,例如“white spaces,while of while loops”等。

我使用BLOB类型将文件保存在数据库中。这就是我检索文件的方式。但它只打印第一个文本文件,但不是全部.. rs.next不能作为循环工作,并显示其他文件内容。对于第一个文件,它运作良好。有人可以告诉我为什么会这样吗?

public class DbPersister {
private Connection conn;

public DbPersister(){
conn=DatabaseConnectionFactory.getConnection();
}

public void getTheFile(){

    try {
        Statement stmt=conn.createStatement();
        String query="SELECT Prog_Num,File FROM file_details";
        ResultSet rs=stmt.executeQuery(query);


        while(rs.next()){

        int prog_num=rs.getInt("Prog_Num");
        String file= rs.getString("File");

            System.out.println("////////////////////////////////////////"+prog_num+"//////////////////////////////////////////////////////");


      FileReader fr=new FileReader(file);
      BufferedReader bReader=new BufferedReader(fr);

      while(bReader.readLine()!=null){
          System.out.println(bReader.readLine());
      }


      }

    } catch (SQLException ex) {
        Logger.getLogger(DbPersister.class.getName()).log(Level.SEVERE, null, ex);
    } catch (IOException ex) {
        Logger.getLogger(DbPersister.class.getName()).log(Level.SEVERE, null, ex);
    }

}

}

我已将文件类型作为字符串。这是对的吗。文件可能非常大。

0 个答案:

没有答案