>  기사  >  Java  >  Java를 사용하여 Excel 파일 내용을 읽는 방법

Java를 사용하여 Excel 파일 내용을 읽는 방법

WBOY
WBOY앞으로
2023-05-02 10:31:172361검색

질문: Java를 사용하여 Excel 파일을 읽을 수 있나요? 그렇다면 어떻게?
답변: 예, Microsoft Excel 파일은 Java로 읽을 수 있습니다. Microsoft는 Excel용 ODBC 드라이버를 제공하므로 JDBC 및 Sun의 JDBC-ODBC 드라이버를 사용하여 Excel 파일을 읽을 수 있습니다.
Book1.Sheet1이라는 Excel 파일이 있는 경우 Microsoft의 ODBC 드라이버는 워크시트의 첫 번째 행을 열 이름(번역자 참고 사항: 필드 이름)으로 사용하고 워크시트 이름을 데이터베이스 테이블 이름으로 사용합니다. JDBC를 통해 워크시트에 접근하려면 새로운 ODBC 데이터 소스도 생성해야 합니다. Windows 2000 시스템에서 데이터 소스를 생성하는 과정은 다음과 같습니다:

"제어판" 관리 도구 "데이터 소스(ODBC)"를 입력하세요. (번역자 주: 연 후 시스템 DSN 선택) 추가를 클릭하고 "드라이버는 Microsoft Excel(*)을 선택합니다. 그런 다음 통합 문서 선택을 클릭한 다음 Excel 파일을 찾아서 선택합니다

확인을 클릭한 후 설정한 데이터 소스 이름 시스템 데이터 소스 목록에 나타나며 이제 데이터 테이블은 이미 데이터 소스 목록에 있습니다(번역자 주: 구성을 완료하려면 확인을 클릭하세요)

(번역자 주: 내 예에서는) 이제 모두 선택하려면 test1 열의 "테스트 값"인 경우 다음 SQL 쿼리를 사용해야 합니다.

SELECT test1 FROM [Sheet1$ ] WHERE test1='Test'

워크시트 이름 뒤에는 "$ 꼭 필요한 기호입니다. 왜냐면 앞뒤에 대괄호가 있기 때문이죠. 왜냐하면 "$는 SQL 문에 예약되어 있기 때문입니다.

다음은 예제 프로그램입니다.


import java.sql.Connection;이 프로그램에서 주 함수 main()은 데이터 테이블에 대한 연결을 설정하고, 기준에 맞는 기록을 제거합니다.
import java.sql.Statement;

import java.sql.ResultSet;
import java.sql.DriverManager;
public 클래스 ExcelReader {
public static void main( String[] args ) {
Connection c = null;
Statement stmnt = null;
try {
Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );
c = DriverManager. getConnection( "jdbc:odbc:Book1", "", "" );
stmnt = c.createStatement();
String query = "[Sheet1$] WHERE test1='test'"에서 test1 선택;
ResultSet rs = stmnt.executeQuery( query );
System.out.println( "'test'와 일치하는 test1의 기록:" );
while( rs.next() ) {
System.out.println( rs.getString( " test1" ) );
}
}
catch( 예외 e ) {
System.err.println( e );
}
마지막으로 {
try {
stmnt.close();
c.close();
}
catch( Exception e ) {
System.err.println( e );
}
}
}
}

(역자 주: 게다가 여기에도 프로그램이 있는데, 참고용으로 모든 기록을 읽어주는 프로그램입니다.):



import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.DriverManager; 
public class ExcelReader { 
 public static void main(String[] args){
  Connection connection = null; 
  try{
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
   Connection con = DriverManager.getConnection( "jdbc:odbc:Book1","","" );
   Statement st = con.createStatement();
   ResultSet rs = st.executeQuery( "SELECT * FROM [Sheet1$]" ); 
   ResultSetMetaData rsmd = rs.getMetaData();
   int numberOfColumns = rsmd.getColumnCount(); 
   while (rs.next()) {
    for (int i = 1; i <= numberOfColumns; i++) {
     if(i>1) //用逗号分隔各列
  System.out.print(", ");
     String columnValue = rs.getString(i);
     System.out.print(columnValue);
    }
    System.out.println("");
   } 
   st.close();
   con.close(); 

  } catch(Exception ex) {
   System.err.print("Exception: ");
   System.err.println(ex.getMessage());
  }
 }
}

위 내용은 Java를 사용하여 Excel 파일 내용을 읽는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제