tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
760
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Tikonteroga Tikonteroga ist offline Mitglied Gold
    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ß
     

  2. #2
    sebastianb sebastianb ist offline Mitglied Gold
    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
     

  3. #3
    twagi1232010 Tutorials.de Gastzugang
    Hi,

    ich glaube der Slash ("/") am Anfang Deiner Pfadangabe stört. Versuchs mal ohne.

    Gruß twagi
     

  4. #4
    Tikonteroga Tikonteroga ist offline Mitglied Gold
    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)
     

  5. #5
    Herbertus Herbertus ist offline Mitglied Bronze
    Registriert seit
    Sep 2010
    Beiträge
    37
    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

  1. Antworten: 0
    Letzter Beitrag: 26.10.10, 23:06
  2. Mit ClassLoader Klassen mehrfach laden
    Von MichaelW im Forum Java
    Antworten: 2
    Letzter Beitrag: 11.10.08, 13:46
  3. HBitmap aus Resource über Graphics zeichnen
    Von pyr0t0n im Forum VisualStudio & MFC
    Antworten: 2
    Letzter Beitrag: 10.07.08, 09:32
  4. [VB 2005] Bild aus Resource Laden
    Von Hafke im Forum .NET Windows Forms
    Antworten: 6
    Letzter Beitrag: 28.08.06, 15:49
  5. SWF über MC in Hauptfilm laden
    Von lugoR im Forum Flash Plattform
    Antworten: 1
    Letzter Beitrag: 01.11.03, 13:55