PDA

View Full Version : Excel auslesen mit Java über JDBC-ODBC Bridge



Seiten : [1] 2

Deficiency
29-11-05, 08: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

KM
29-11-05, 10:01
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

KM
29-11-05, 10:04
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, 12: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, 12: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, 12: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

Fuerchau
29-11-05, 13:08
Das Problem ist wohl eher, dass der JDBC-ODBC-Treiber nicht UNICODE-Fähig ist.
Zu POI kann ich nix sagen.

KM
29-11-05, 14:28
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, 08: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

KM
30-11-05, 08:37
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