Java 如何使用rs.next()打印Excel工作簿中的所有行?
我正在阅读一个三列多行的Excel工作簿,使用rs.next()打印所有行的值,但它只打印第一行的值 我尝试了以下两种方法,但它总是只打印第一行,并且rowscont=1Java 如何使用rs.next()打印Excel工作簿中的所有行?,java,excel,Java,Excel,我正在阅读一个三列多行的Excel工作簿,使用rs.next()打印所有行的值,但它只打印第一行的值 我尝试了以下两种方法,但它总是只打印第一行,并且rowscont=1 Statement s = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ltSet.CONCUR_READ_ONLY) Statement s = con.createStatement(); 这是到目前为止我的代码。有人能告诉我如何打印所有行吗 publi
Statement s = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ltSet.CONCUR_READ_ONLY)
Statement s = con.createStatement();
这是到目前为止我的代码。有人能告诉我如何打印所有行吗
public static void main(String[] args) throws SQLException {
Connection con=DriverManager.getConnection( "jdbc:odbc:Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=D:\\Test.xls");
//Statement s = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
Statement s = con.createStatement();
ResultSet rs = s.executeQuery("SELECT * FROM [Sheet1$]");
int rowcount=0;
if(rs.next())
{
String userid1=rs.getString("UserId");
System.out.println(userid1);
++rowcount;
}
System.out.println("Total number of records = " + rowcount);
rs.close();
}
}您必须使用
while
循环,而不是if
语句
If
语句只执行一次,但不会循环以获得所需的结果
while(rs.next())
{
String userid1=rs.getString("UserId");
System.out.println(userid1);
++rowcount;
}
用上面的代码完全替换您的if块。它起作用了,多亏了你们大家,我犯了一个大错误
while(rs.next())
{
String userid1=rs.getString("UserId");
System.out.println(userid1);
++rowcount;
}