ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
760
760
EMPFEHLEN
-
08.11.10 15:48 #1
- Registriert seit
- Apr 2007
- Beiträge
- 153
Hallo,
ich muss mit der Poi-API eine Excel Datei mit Daten aus einer Datenbank befüllen. Hierfür muss ich eine xls-Template Datei als verwenden.
Nun habe ich eine Datei "Template.xls" in mein Package kopiert und versucht diese als InputStream zu laden.
Hier mal ein Ausschnitt aus meinem Code.
Code :1 2 3 4 5
ClassLoader classLoader = FileInputStream.class.getClassLoader(); String resource = "/com/ExcelReport/Template.xls"; InputStream inputStream = classLoader.getResourceAsStream(resource);
Leider erhalte ich beim Aufruf von getResourceAsStream() eine Exception.
Kann mir jemand sagen was ich falsch mache ?
Gruß
-
08.11.10 15:58 #2
- Registriert seit
- Dec 2009
- Beiträge
- 125
Falls es sich um eine FileNoteFoundExc. handeln sollte, kannst du mal folgendes probieren:
probier mal:
Code :1
getClass().getResourceAsStream("Template.xls")
Gruß
Sebastian
-
08.11.10 16:18 #3twagi1232010 Tutorials.de Gastzugang
Hi,
ich glaube der Slash ("/") am Anfang Deiner Pfadangabe stört. Versuchs mal ohne.
Gruß twagi
-
09.11.10 11:14 #4
- Registriert seit
- Apr 2007
- Beiträge
- 153
Hallo,
danke für die Vorschläge.
Der erste Vorschlag schien erst zu funktionieren. Jedoch wird die XLS Datei nicht richtig eingelesen.
Folgende beiden Implementierungen sind nicht äquivalent, müssen es jedoch sein, damit meine Anforderungen erfüllt wären.
Folgende Implementierung führt dazu, dass ein Workbook erstellt wird, jedoch wird ein neues Workbook erstellt nund nicht mein Template geladen.
Code :1 2 3 4 5
Class<?> classType = this.getClass(); InputStream inputStream = classType.getResourceAsStream("Template.xls"); HSSFWorkbook workbook = new HSSFWorkbook(inputStream);
Folgender Code liest die XLS Datei richtig ein und ich kann über die POI API auf die Daten zugreifen. Es muss beachtet werden, dass ich vertrauliche Daten innerhalb des Pfads durch [...] maskiert habe.
Code :1 2 3
File file = new File("C:\\...\\Workspace\\...\\Template.xls"); FileInputStream fileInputStream = new FileInputStream(file); HSSFWorkbook workbook = new HSSFWorkbook(fileInputStream);Geändert von Tikonteroga (09.11.10 um 11:21 Uhr)
-
So vllt.?
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
import java.io.File; public class test { public static void main(String[] args) { String filePath = test.class.getResource("Template.xls").toString(); filePath = filePath.substring(5); File f = new File(filePath); System.out.println("FilePath: " + filePath + "\nFile: " + f); /* FileInputStream fileInputStream = new FileInputStream(f); HSSFWorkbook workbook = new HSSFWorkbook(fileInputStream); */ } }
Ähnliche Themen
-
Über unterschiedliche ClassLoader erstellte Java Objekte kopieren mit Transloader
Von Thomas Darimont im Forum JavaAntworten: 0Letzter Beitrag: 26.10.10, 23:06 -
Mit ClassLoader Klassen mehrfach laden
Von MichaelW im Forum JavaAntworten: 2Letzter Beitrag: 11.10.08, 13:46 -
HBitmap aus Resource über Graphics zeichnen
Von pyr0t0n im Forum VisualStudio & MFCAntworten: 2Letzter Beitrag: 10.07.08, 09:32 -
[VB 2005] Bild aus Resource Laden
Von Hafke im Forum .NET Windows FormsAntworten: 6Letzter Beitrag: 28.08.06, 15:49 -
SWF über MC in Hauptfilm laden
Von lugoR im Forum Flash PlattformAntworten: 1Letzter Beitrag: 01.11.03, 13:55





Zitieren
Login





