View Full Version : Excel auslesen mit Java über JDBC-ODBC Bridge
Deficiency
29-11-05, 07:49
Hi Ihr!
So ich hab ne Frage, vielleicht hat jemand schon einmal damit erfahrung gemacht?!
Also:
Ich habe ein Java Prog geschrieben, welches mittels JDBC-ODBC Brige eine
Excel Datei ausliest. Das Funktioniert auch Super. Jedoch werden Sonderzeichen verstümmelt:
So wird aus
č --> c. Es ist egal, in welche Tabelle es rein kommt, da diese "Verstümmelung" schon beim auslesen passiert.
Ich bekomme ja einen ResultSet diesen habe ich schon mit getString, getUnicodeStream usw. ausprobiert aber immer das gleiche Ergebnis...
Vielen Dank
Euer Deficiency
Irgendwas scheint an Deinem Programm nicht Unicode-fähig zu sein.
Die Angaben sind jedoch etwas dürftig, um genaueres zu sagen.
Wie greifst Du denn auf die Zellinhalte der Excel-Tabelle zu ? Ich habe eine solche Lösung mit POI erstellt. Damit funktioniert das ohne Probleme. Da werden auch die Zeichen korrekt extrahiert.
Könntest Du ggf. etwas Code preisgeben ?
Gruß,
KM
Ich nochmal,
meines Wissens ist die JDBC-ODBC Bridge von Sun nicht Unicode-fähig. Welche benutzt Du denn ? Daran wird es wohl liegen. Aber wie gesagt, schau Dir doch mal POI an.
Gruß,
KM
Deficiency
29-11-05, 11:31
Also warte mal so ist mein Code
static final String DRIVER_NAME = "sun.jdbc.odbc.JdbcOdbcDriver";
static final String DATABASE_URL = "jdbc:odbc:Exceltest";
try {
Class.forName(DRIVER_NAME);
conn = DriverManager.getConnection(DATABASE_URL);
stmt = conn.createStatement();
rs = stmt.executeQuery("Select * FROM [AAV$]");
while(rs.next()) {
firstcol = rs.getString(1);
secondcol = rs.getString(2);
Ich habe auch schon an POI gedacht, muss es mal unter Eclipse installieren.
Hab mir meine SDK zerschossen also werde ich erst morgend dazu kommen
Vielen Dank
Deficiency
29-11-05, 11:36
So jetzt muss ich nochmal posten!
Wenn ich aber:
rs.getUnicodeStream(2)
das dann an einen reader übergebe, dann müsste es doch klappen aber wieder nix...
Deficiency
29-11-05, 11:51
Noch ne Frage...
Kommt jetzt vielleicht ein bischen Blöd aber irgendwas mach ich falsch.
Wenn ich POI zu laufen bekommen will, unter Eclipse, mache ich folgendes
Ich lad die *.jar auf meinen PC
Build es mittels ANT.
Und dann???
Ich hab es in die Prop getan aber nix passiert. in welches Verzeichnis muss ich die gebuildeten (Scheiß Neogolismus) Ordner/Dateien tun?? Sind nämlich ganz schön viele gebuildet worden
Thx
Das Problem ist wohl eher, dass der JDBC-ODBC-Treiber nicht UNICODE-Fähig ist.
Zu POI kann ich nix sagen.
Zu Eclipse kann ich jetzt nix sagen. Aber wo liegt denn Dein Problem ?
Du musst doch von der Apache-Seite nur die betreffende .zip oder .tar.gz runterladen (z.B. poi-bin-2.5.1-final-20040804.zip), diese entpacken und die .jar in Deinen Classpath aufnehmen. Dann kannst Du doch die Klassen benutzen. Oder habe ich jetzt was falsch verstanden ?
Gruß,
KM
Deficiency
30-11-05, 07:28
Ne. Ich lad die zip runter und dann muss ich erst noch Builden mit ANT
und dann???
Dann hab ich ne OrdnerStruktur,. mit der ich nix anfangen kann!!!!
Thx
Aber Du musst doch nichts "builden" ??? In dieser JAR-File sind doch alle Klassen bereits fertig enthalten. Die kannst Du wie jede andere Klasse in Dein Programm einbauen. Und was meinst Du mit Ordnerstruktur ???
Irgendwie verstehe ich nur Bahnhof...
Gruß,
KM