# xlsx Dateien lesen OHNE apache POI



## J_A (21. Mrz 2011)

Hallo ihr lieben,

wir müssen aufgrund eines Projektes in einem NetWeaver Portal (nebensächlich für das Problem) eine Excel-Upload Option erstellen. 
Generell auch nicht das Problem und google war unser bester Freund.

Jedoch haben wir dass Problem, dass wir nur Java1.4.2 benutzen dürfen und dies auch nicht updaten können (aus verschiedenen Gründen, die ebenfalls nebensächlich sind  ). Es ist also definitiv nicht möglich, eine andere Java Version zu benutzen.

Das ist somit auch der Grund warum wir die apache POI nicht benutzen können. 
Denn, so wie wir es verstanden haben,braucht man für apache poi3.5 ++ java1.5.

XLS Dateien lesen wir im Moment mit JExcelApi ein und das klappt auch wunderbar.

Aber wie können wir nun mit unserem alten Stand von Java XLSX Dateien einlesen und deren Inhalt ausgeben?

Wir haben schon überlegt, die xlsx Datei vielleicht zu entpacken (wenn möglich) und diese Dateien zu verarbeiten, aber auch dafür finden wir keine Möglichkeit, wie wir das anstellen sollen.

Leider haben wir auch nur noch bis morgen abend Zeit, einen Ansatz zu finden, ansonsten muss mit dem Kunden gesprochen werden und wie ihr vielleicht wisst, kommt das nie gut an.

Wir hoffen, dass uns jemand weiterhelfen kann oder eine Idee hat, was wir noch ausprobieren können.

Liebe Grüße,

J_A


----------



## theodosis (21. Mrz 2011)

wenn du bisschen in google suchst dann gibt es bestimmt ein freies Tool mit dem du in command line eine xlsx Datei nach xls konvertieren kannst. 

In diesem Fall du koenntest mit hilfe von 


```
Process pr = Runtime.getRuntime().exec("convert " + myxlsx + "  " + neuxls );
pr.waitFor();
```

(so ungefär)

diesen Befehl ausrufen und mit der xls statt der xlsx arbeiten.


----------



## J_A (21. Mrz 2011)

ok das probieren wir mal aus morgen. danke dir


----------



## J_A (22. Mrz 2011)

Guten Morgen,
also nach Rücksprache mit unserem chef dürfen wir kein tool benutzen.

hat noch irgendjemand eine andere idee wie man das machen könnte?
Kann man xlsx Dateien vielleicht entpacken und das dann irgendwie weiterverarbeiten? Wenn ja, hat jemand eine Idee wie?

Vielen Dank im voraus für die antworten.

Liebe Grüße,
J_A


----------



## Gastredner (22. Mrz 2011)

Der Aufbau von XSLX-Dateien ist offengelegt bzw. als Standard anerkannt (Office Open XML). Wenn ihr nur auf die Werte einiger Zellen zugreifen müsst und keine weitergehenden Funktionen (Formlen, Grafiken, etc) benötigt, dann solltet ihr mal einen Blick in die Office-Open-XML-Spezifikation werfen und nachsehen, ob sich dieser einfache, lesende Zugriff auch von euch über die Verarbeitung der enthaltenen XML-Dateien realisieren ließe.


----------



## theodosis (22. Mrz 2011)

probiere mal das folgende aus:

Ändere die Endung einer xlsx Datei, nach .zip.

Entpacke diese zip Datei. Dann hast du paar Verzeichnissen mit verschiedene XML's. Ein Verzeichnis davon heisst 'worksheets' und da liegen die Blättern aus der xls(x) Datei, die aber als XML geparst werdern mussen.

Alle diese Schritte, können von innerhalb Java 1.4 ausgeführt werden, nur ich weiss nicht ob so was möglich bis heute Abend ist.


----------



## J_A (22. Mrz 2011)

Ja, vielen vielen Dank. Wir haben Verlängerung beantragt 

Vielen Dank


----------

