Integer-Zahlen in Excel-Sheet schreiben

Status
Nicht offen für weitere Antworten.

Star82

Mitglied
Hallo!

Hab mir Java Excel API zum auslesen und modifizieren von xls-Dateien heruntergeladen. Das Auslesen funktioniert super. Mein Problem ist das Hineinschreiben von ZAHLEN in ein Excel-Sheet.
Hab da ein Tutorial gefunden mit folgenden Beispielen:

Code:
Label label = new Label(0, 2, "A label record"); 
sheet.addCell(label); 

Number number = new Number(3, 4, 3.1459); 
sheet.addCell(number);

Das Hinzufügen von dem Label funktioniert problemlos, aber die Zahl kann nicht hinzugefügt werden, weil es ja den Datentyp "Number" in Java ja nicht gibt - oder liege ich komplett falsch?? (hier zeigt er mir halt immer eine Fehlermeldung an) - Hat jemand eine Ahnung, wie das funktionieren kann?

MfG Star
 
Code:
java.lang.Object
|--- java.lang.Number
     |--- java.lang.Integer
 
Danke für die Hilfe!

Jetzt unterstreicht er mir das folgendermaßen(natürlich rot): Number number = new Number(3, 4, 3.1459);
Folgende Fehlermeldung kommt: Cannot instantiate the type Number, since it is not a concrete class

Nach dem Beispiel in diesem Tutorial müsste es aber so funktionieren. Hat jemand vielleicht noch eine Ahnung, was falsch sein könnte oder wie ich anders eine Zahl in ein Excel-Sheet schreiben könnte?
 
Die Klasse 'Number' ist "abstract". (siehe API!!!)

Du musst also eine abgeleitete Klasse verwenden (BigDecimal, BigInteger, Byte, Double, Float, Integer, Long, Short)

Dann noch die Frage: Was willst Du mit den Paramtern im Konstruktor erreichen ? Einen solchen Konstruktor gibt es weder bei Number noch bei Integer !

Hier noch der Link zur API: http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Number.html
 
Mein einziges Problem ist, eine Zahl vom Typ Integer in ein Spreadsheet zu schreiben - es funktioniert aber nicht.

@Sky:
Dann noch die Frage: Was willst Du mit den Paramtern im Konstruktor erreichen ? Einen solchen Konstruktor gibt es weder bei Number noch bei Integer !

Ich habe das einfach aus diesem Tutorial heraus. Beim Label funktioniert es ja auch - da übergebe ich ja auch 3 Parameter (nämlich Spalte, Zeile und Wert) und so ähnlich muss es ja bei einer Zahl auch funktionieren.
Aber du hast Recht beim Typ Number kann man keine Parameter übergeben, aber wie soll ich es sonst machen? :?

@KSG9|plak
Ich denk mal, dass die Klasse Number abstrakt sein wird. Schau halt mal in die ExcelAPI nach ner ensprechenden Klasse

Wo finde ich die ExcelAPI?
 
Star82 hat gesagt.:
Mein einziges Problem ist, eine Zahl vom Typ Integer in ein Spreadsheet zu schreiben - es funktioniert aber nicht.

@Sky:
Dann noch die Frage: Was willst Du mit den Paramtern im Konstruktor erreichen ? Einen solchen Konstruktor gibt es weder bei Number noch bei Integer !

Ich habe das einfach aus diesem Tutorial heraus. Beim Label funktioniert es ja auch - da übergebe ich ja auch 3 Parameter (nämlich Spalte, Zeile und Wert) und so ähnlich muss es ja bei einer Zahl auch funktionieren.
Aber du hast Recht beim Typ Number kann man keine Parameter übergeben, aber wie soll ich es sonst machen? :?

Also, die Aussage "Beim Label funktioniert es ja auch" ist natürlich nur zur Hälfte richtig! Bei dem Label handelt es sich eindeutig nicht um die von Sun bereitgestellte Klasse "Label" sondern gehört in irgendeinerweise zu dem Framework, welches Du verwendest.
Ich persönlich kenne dieses Framework nicht und kann Dir daher nicht sagen, wie man Zahlen rein bekommt o.ä.

Die einzige Vermutung, die m.E. nahe liegt: Du hast einen falschen Import. Anstatt der "Number" aus deinem Framework hast Du "Number" aus dem SDK importiert.
 
Vielen Dank für eure Hilfe!
Ich werde es weiterprobieren und wenn ich draufkomme, was falsch ist, poste ich es noch!

MfG Star
 
Ich persönlich kenne dieses Framework nicht und kann Dir daher nicht sagen, wie man Zahlen rein bekommt o.ä.
genau, siehe FAQ, vielleicht solltest du mal angeben, was du eigentlich fuer ne ExcelAPI benutzt ....

wenn du auf die Homepage kuckst wo du dieses Framework heruntergeladen hast, wird dir wahrscheinlich auch schnell eine Antwort auf deine Frage gegeben:

Wo finde ich die ExcelAPI?
 
Hört sich für mich nach der JExcelApi (http://jexcelapi.sourceforge.net), die neben der Klasse
Code:
jxl.write.Label
auch die Klasse
Code:
jxl.write.Number
bietet. Diese solltest Du voll qualifiziert angeben, damit Verwechselungen zu java.lang.Number vermieden werden.
Grüsse Bernoulli
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben