CPU
Lieutenant
- Registriert
- Jan. 2006
- Beiträge
- 704
Hallo Leute
,
die Problematik ist folgende: auf dieser Seite hier habe ich für PHP eine Anleitung gefunden, wie man eine Exceltabelle generiert ohne groß Bibliotheken einzubauen. Am Ende habe ich einen kleines Codestück eingebaut, wo die grundlegende Funktion gezeigt wird. Vielleicht kann jemand das noch gebrauchen.
Unter Java möchte ich auch ohne große Frameworks on-the-fly eine kleine Exceltabelle generieren. Und daher wollte ich fragen:
* Ob Ihr mir erklären könnt, was die Funktion pack() (z.B. pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);) macht und was die Parameter bedeuten.
* Ob es eine ähnliche Funktion auch in Java gibt, sodass ich den existierenden Code einfach migrieren kann.
Oder kennt Ihr irgendwelche Java-Code-Bruchstücke, mit denen man schnell Exceltabellen oder Open-Document-Tabellen erstellen kann.
Beste Grüße und vielen Dank vorab,
CPU
P.S.: Wie versprochen der Code!

die Problematik ist folgende: auf dieser Seite hier habe ich für PHP eine Anleitung gefunden, wie man eine Exceltabelle generiert ohne groß Bibliotheken einzubauen. Am Ende habe ich einen kleines Codestück eingebaut, wo die grundlegende Funktion gezeigt wird. Vielleicht kann jemand das noch gebrauchen.

Unter Java möchte ich auch ohne große Frameworks on-the-fly eine kleine Exceltabelle generieren. Und daher wollte ich fragen:
* Ob Ihr mir erklären könnt, was die Funktion pack() (z.B. pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);) macht und was die Parameter bedeuten.
* Ob es eine ähnliche Funktion auch in Java gibt, sodass ich den existierenden Code einfach migrieren kann.
Oder kennt Ihr irgendwelche Java-Code-Bruchstücke, mit denen man schnell Exceltabellen oder Open-Document-Tabellen erstellen kann.
Beste Grüße und vielen Dank vorab,
CPU
P.S.: Wie versprochen der Code!
Code:
function xlsBOF() {
return pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
}
function xlsEOF() {
return pack("ss", 0x0A, 0x00);
}
function xlsWriteNumber($Row, $Col, $Value) {
$c = pack("sssss", 0x203, 14, $Row, $Col, 0x0);
return $c . pack("d", $Value);
}
function xlsWriteLabel($Row, $Col, $Value ) {
$L = strlen($Value);
$c = pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);
return $c . $Value;
}
$xls = xlsBOF();
$xls .= xlsWriteLabel(1, 0, "Student Register $semester/$year");
$xls .= xlsWriteLabel(2, 0, "COURSENO : ");
$xls .= xlsWriteNumber(2, 1, $courseid);
$xls .= xlsEOF();