Avatar billede Slettet bruger
16. oktober 2004 - 00:12 Der er 4 kommentarer og
1 løsning

Indlæse data fra et Excel regneark

Hejsa,

Er det muligt på nogen måde at hente data'erne fra et Excel regneark ind i Java ??
Jeg har et excel regneark med priser for en kunde som gerne vil have dem læst ind på sin hjemmeside. Jeg ved bare ikke om man kan gøre det.
Avatar billede arne_v Ekspert
16. oktober 2004 - 00:14 #1
Sagtens.

De 2 mest oplagte muligeheder er JDBC-ODBC og Apache POI !
Avatar billede arne_v Ekspert
16. oktober 2004 - 00:14 #2
Eksempel på det første:

import java.sql.*;

public class ReadXLS {
  public static void main(String[] args) throws Exception {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
      Connection con = DriverManager.getConnection("jdbc:odbc:;Driver={Microsoft Excel Driver (*.xls)};Dbq=C:\\jtest.xls;");
      Statement stmt = con.createStatement();
      ResultSet rs = stmt.executeQuery("SELECT * FROM [Sheet1$]");
      while (rs.next()) {
        int iv = rs.getInt(1);
        String sv = rs.getString(2);
        System.out.println(iv + " " + sv);
      }
      stmt.close();
      con.close();
  }
}
Avatar billede arne_v Ekspert
16. oktober 2004 - 00:15 #3
Eksempel på det andet:

import java.io.*;

import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.poifs.filesystem.*;

public class ReadPOI {
  public static void main(String[] args) throws Exception {
      POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream("C:\\jtest.xls"));
      HSSFWorkbook wb = new HSSFWorkbook(fs);
      HSSFSheet sheet = wb.getSheetAt(0);
      int rownum = 1;
      for (;;) {
        HSSFRow row = sheet.getRow(rownum);
        if(row==null) break;
        HSSFCell ivcell = row.getCell((short)0);
        int iv = (int)ivcell.getNumericCellValue();
        HSSFCell svcell = row.getCell((short)1);
        String sv = svcell.getStringCellValue();
        System.out.println(iv + " " + sv);
        rownum++;
      }
  }
}
Avatar billede Slettet bruger
16. oktober 2004 - 12:48 #4
Mand, du er dygtig Arne :-)
Det var lige hvad jeg skulle bruge, så smid et svar og du får dine point
Avatar billede arne_v Ekspert
16. oktober 2004 - 14:30 #5
:-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester