我必须读取任何列的所有单元格,标题名称为#34; ABCD"。 我可以将值迭代到任何行,但我遇到了获取列标题名称的情况。我还可以使用excel作为数据库获取列标题名称: String sSQL ="从[MAIN $]"中选择*; // sql语句 的Class.forName("在sun.jdbc.odbc.JdbcOdbcDriver&#34);
conn = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Excel Driver (*.xls)};DriverId=22;Dbq= " + XLSPath + ";ReadOnly=0;");
Statement stmnt = conn.createStatement();
rs = stmnt.executeQuery(sSQL); //sql statement
Statement stmnt1 = null;
//Connection conn1 = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Excel Driver (*.xls)};DriverId=22;DBQ= " + XLSPath + ";ReadOnly=false;");
stmnt1 = conn.createStatement();
stmnt1 = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
String ctvstr ="更新[MAIN $] SET EXCEL_Heading =" +"'" + ColValues +"'" +" ID =" + j; stmnt1.executeUpdate(ctvstr);
我必须在Java + xssf + poi
中做同样的事情答案 0 :(得分:0)
我认为你需要ResultSetMetaData,ckeck这个网站 http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSetMetaData.html
答案 1 :(得分:0)
要查找列名并使用其标题名称(例如“ABCD”)迭代到相应列,解决方法是在第一行中找到字符串匹配“ABCD”的单元格,然后迭代到相应的列(单元格编号为“ABCD”)