Hlavní stránka > Java > Čtení Excel dokumenty v jazyce Java

Čtení Excel dokumenty v jazyce Java

Z nějakého důvodu jsem našel Apache POI obtížné používat pro čtení Excel, pokud jde o pojmenování úmluv a kód, takže jsem hledal jiné knihovny pro čtení Excel v jazyce Java a zastavil jsem se v JXL.

Java Excel API sice JXL je Java API, který nám umožňuje čtení / zápis / upravit Excel. Mezi hlavní, že jsem rád na to byla jeho jednoduchost přes Apache POI balíček. Tento článek vám ukáže, jak můžeme číst Excel pomocí JXL.

Teď tady budu číst Excel s obsahem:

EmpId Jméno Označení
1 ABC Software Engineer
2 DFG Sr Software Engineer
3 LOI Team Leader
4 LKJ Project Manager
5 QWE Software Architech

Váš email:


Mám nahrané stejný Excel na server, můžete si jej stáhnout zde: Stáhnout Excel

  1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 ; import java.io.FileInputStream ; import java.io.IOException ; import java.io.InputStream ; import java.util.Locale ; import jxl.Cell ; import jxl.Sheet ; import jxl.Workbook ; import jxl.WorkbookSettings ; import jxl.read.biff.BiffException ; import jxl.DateCell ; public class ReadXLSheet { public void init ( String filePath ) { FileInputStream fs = null ; try { fs = new FileInputStream ( new File ( filePath ) ) ; contentReading ( fs ) ; } catch ( IOException e ) { e. printStackTrace ( ) ; } catch ( Exception e ) { e. printStackTrace ( ) ; } finally { try { fs. close ( ) ; } catch ( IOException e ) { e. printStackTrace ( ) ; } } } //Returns the Headings used inside the excel sheet public void getHeadingFromXlsFile ( Sheet sheet ) { int columnCount = sheet. getColumns ( ) ; for ( int i = 0 ; i < columnCount ; i ++ ) { System . out . println ( sheet. getCell ( i, 0 ) . getContents ( ) ) ; } } public void contentReading ( InputStream fileInputStream ) { WorkbookSettings ws = null ; Workbook workbook = null ; Sheet s = null ; Cell rowData [ ] = null ; int rowCount = '0' ; int columnCount = '0' ; DateCell dc = null ; int totalSheet = 0 ; try { ws = new WorkbookSettings ( ) ; ws. setLocale ( new Locale ( "en" , "EN" ) ) ; workbook = Workbook. getWorkbook ( fileInputStream, ws ) ; totalSheet = workbook. getNumberOfSheets ( ) ; if ( totalSheet > 0 ) { System . out . println ( "Total Sheet Found:" + totalSheet ) ; for ( int j = 0 ; j < totalsheet ; j ++ ) { System . out . println ( "Sheet Name:" + workbook. getSheet ( j ) . getName ( ) ) ; } } //Getting Default Sheet ie 0 s = workbook. getSheet ( 0 ) ; //Reading Individual Cell getHeadingFromXlsFile ( s ) ; //Total Total No Of Rows in Sheet, will return you no of rows that are occupied with some data System . out . println ( "Total Rows inside Sheet:" + s. getRows ( ) ) ; rowCount = s. getRows ( ) ; //Total Total No Of Columns in Sheet System . out . println ( "Total Column inside Sheet:" + s. getColumns ( ) ) ; columnCount = s. getColumns ( ) ; //Reading Individual Row Content for ( int i = 0 ; i < rowCount ; i ++ ) { //Get Individual Row rowData = s. getRow ( i ) ; if ( rowData [ 0 ] . getContents ( ) . length ( ) != 0 ) { // the first date column must not null for ( int j = 0 ; j < columnCount ; j ++ ) { switch ( j ) { case 0 : System . out . println ( "Employee Id:" + rowData [ j ] . getContents ( ) ) ; case 1 : System . out . println ( "Employee Name:" + rowData [ j ] . getContents ( ) ) ; case 2 : System . out . println ( "Employee Designation:" + rowData [ j ] . getContents ( ) ) ; default : break ; } } } } workbook. close ( ) ; } catch ( IOException e ) { e. printStackTrace ( ) ; } catch ( BiffException e ) { e. printStackTrace ( ) ; } } public static void main ( String [ ] args ) { try { ReadXLSheet xlReader = new ReadXLSheet ( ) ; xlReader. init ( "/home/hitesh/Desktop/test.xls" ) ; } catch ( Exception e ) { e. printStackTrace ( ) ; } } } import java.io.File, import java.io.FileInputStream, import java.io.IOException, import java.io.InputStream, import java.util.Locale, import jxl.Cell, import jxl.Sheet, import jxl.Workbook; import jxl.WorkbookSettings, import jxl.read.biff.BiffException, import jxl.DateCell, public class ReadXLSheet (public void init (String filePath) (FileInputStream fs = null; try (fs = new FileInputStream (new File (filePath)); contentReading (FS);) chytit (IOException e) (e. printStackTrace ();) catch (Exception e) (e. printStackTrace ();) finally (try (FS. close ();) chytit (IOException e) (e . printStackTrace ();))) / / Vrací Nadpisy použité uvnitř Excel public void getHeadingFromXlsFile (Sheet list) (int columnCount = list. getColumns (); for (int i = 0; i <columnCount; i + +) (System. ven. System.out.println (sheet. getCell (i, 0). getContents ());)) public void contentReading (InputStream fileInputStream) (WorkbookSettings byla = null; sešitu sešit = null; Sheet s = null; Mobilní rowData [] = null; int rowCount = '0 '; int columnCount = '0'; DateCell dc = null; int totalSheet = 0; try (byl = new WorkbookSettings (); byl. setlocale (nové lokalizace ("en", "EN" )); sešit = sešit. getWorkbook (fileInputStream, byl), totalSheet = sešitu. getNumberOfSheets (); if (totalSheet> 0) (System. ven. System.out.println ("Celkem Sheet Nalezeno:" + totalSheet) for (int j = 0; j <totalsheet; j + +) (System. ven. System.out.println ("název listu:" + sešit. getSheet (j). getName ());)) / / Získání Výchozí Sheet tj. 0 s = sešitu. getSheet ( 0), / / Čtení jednotlivé buňky getHeadingFromXlsFile (y) / / Celkem Celkem č. řádků v tabulce, vrátí vám žádná z řad, které jsou obsazené s nějakým informačním systému. ven. System.out.println ("Řádků celkem uvnitř listu:" + s . getRows ()); rowCount = s. getRows (); / / Celkem Celkem č. sloupců v listu systému. ven. System.out.println ("Celkem sloupec uvnitř Sheet:" + s. getColumns ()); columnCount = s. getColumns ( ); / / Čtení Jednotlivé řádku Obsah for (int i = 0; i <rowCount; i + +) (/ / Získání jednotlivých řádků rowData = s. getRow (i); if (rowData [0]. getContents (). délku ()! = 0) (/ / první sloupec datum, nesmí null for (int j = 0; j <columnCount; j + +) (switch (j) (case 0: System. ven. System.out.println ("Zaměstnanec Id: "+ rowData [j]. getContents ()); case 1: System. ven. System.out.println (" Jméno zaměstnance: "+ rowData [j]. getContents ()); case 2: System. ven. System.out.println (" Zaměstnanec Určení: "+ rowData [j]. getContents ()); default: break;)))) sešitu. close ();) chytit (IOException e) (e. printStackTrace ();) chytit (BiffException e) (e. printStackTrace ( );)) public static void main (String [] args) (try (ReadXLSheet xlReader = new ReadXLSheet (); xlReader. init ("/ home / Hitesh / Desktop / test.xls");) catch (Exception e) ( e. printStackTrace ();))) 
  Celkem Sheet Nalezeno: 3
 ----------------------------------------------
 Název listu: List1
 Název listu: List2
 Název listu: List3
 ----------------------------------------------
 Záhlaví sloupce: EmpId
 Záhlaví sloupce: jméno
 Záhlaví sloupce: Označení
 ----------------------------------------------
 Řádků celkem uvnitř listu: 6
 ----------------------------------------------
 Celkem Sloupec uvnitř Sheet: 3
 ----------------------------------------------
 Zaměstnanec Id: EmpId
 Jméno zaměstnance: Jméno
 Zaměstnanec Označení: Označení
 ----------------------------------------------
 Zaměstnanec ID: 1
 Jméno zaměstnance: ABC
 Zaměstnanec Označení: Software Engineer
 ----------------------------------------------
 Zaměstnanec ID: 2
 Jméno zaměstnance: DFG
 Zaměstnanec Označení: SR Software Engineer
 ----------------------------------------------
 Zaměstnanecké ID: 3
 Jméno zaměstnance: LOI
 Zaměstnanec Označení: Team Leader
 ----------------------------------------------
 Zaměstnanecké ID: 4
 Jméno zaměstnance: LKJ
 Zaměstnanec Označení: Project Manager
 ----------------------------------------------
 Zaměstnanec Id: 5
 Jméno zaměstnance: QWE
 Zaměstnanec Označení: Software Architect 

S ohledem na tato písemná kódu jsem schopen provádět následující operace:

  • Spočítejte celkový počet listů v rámci Excel
  • Seznam všech Název Sheet použité uvnitř Excel
  • Přečtěte si jednotlivé buňky pro specifikaci buněk pozice - v kódu si přečetl na záhlaví sloupce, tj. první řádek
  • Přečtěte si celkového upraveného řádky v Excel
  • Přečtěte si celkového upraveného Sloupce v Excel
  • Přečtěte si Jednotlivé řádku Obsah

Vlastní vyhledávání


Populární články:

Sdílet a využívat:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • IndianPad
  • LinkedIn
  • Live
  • MySpace
  • Netvibes
  • RSS
  • Technorati
  • Yahoo! Bookmarks
  • Yahoo! Buzz
  • Reddit
  • Add to favorites
  • PDF
  • Twitter
Tags: Kategorie: Java Tagy:
  1. 26.prosince 2008 v 10:05 | # 1

    Pokud mám napsat tento kód pomocí POI, splnit úkoly, které jste provedli, by kód byl do jisté míry podobný s velmi podobné volání API. Vidím obtížnost jako více či méně stejný ve srovnání s POI. Moje otázka je, jak se liší od POI?

  2. 28.prosince 2008 v 22:36 | # 2

    Ahoj Surya,
    Rozdíl přichází s balíčkem konvence používané. JXL je čistě pro Excel v jazyce Java. Tam, kde stejně jako v Apache POI tam jsou různé projekty z různých Microsoft Office soubory, např. HWPF, HSSF, HPSF atd. Nyní jako vývojář budete se muset podívat, který z nich, pokud pro Excel parsování, download balíčku a následně realizovat jej.

  3. 02.01.2009 v 11:58 | # 3

    Ahoj,
    Líbilo se mi váš tutorial.
    Manish

  4. Avijit
    06.01.2009 v 04:10 | # 4

    to je problém, zatímco s více listy v xls souboru. Chci accsess více listů hodnot najednou, ale vrací ovelap hodnotu ze dvou vrstev.

    ale tutorial je příliš dobrý.
    plz vyřešit problém

  5. 06.01.2009 v 04:44 | # 5

    Ahoj Avijit,
    Můžete vložit do zdrojového kódu, který používáte.

    Hitesh Agarwal

  6. Vivek Mittal
    11.01.2009 v 14:08 | # 6

    Ahoj Hitesh,
    Velmi pěkný tutorial muž. Jen tak dál

  7. Abhishek
    18.února 2009 v 07:55 | # 7

    Ahoj Hitesh,

    Dobrá práce člověk. Měl jsem otázku. Je možné psát makra aplikace Excel v jazyce Java a popravit ty makra při práci na tabulku.

    Díky
    Abhi

  8. seeraz
    29.května 2009 v 02:41 | # 8

    Velká tutorial, thx lottt ...

  9. Moha
    02.06.2009 v 07:38 | # 9

    Ahoj,

    Za prvé, děkuji za tutorial.
    Mám problém. Já si stáhli API, ale já nevím, kde ji uložit do zatmění. Důvodem je to, že jsem putted rozbalené soubory z API do složky plugin, ale program si dal jako příklad stále žádá o jxl.
    Mohl byste, prosím pomoci?
    Díky.

  10. Rohan
    01.09.2009 v 04:40 | # 10

    Velmi pěkné xls číst kód .. thanx hodně.

  11. barakha
    02.09.2009 v 01:30 | # 11

    Velmi pěkný tutorial spatřují excel čtení. Díky

  12. Uma
    10.09.2009 v 21:19 | # 12

    Jak číst data ze souboru aplikace Excel pomocí názvu sloupce.
    Řekněme, že pro např.
    Místo Země
    Chennai Indie
    Mumbai Indie
    Nutnost číst pomocí sloupce Place, Country.
    Prosím, pomozte mi.

  13. Qing
    13.října 2009 v 18:06 | # 13

    Ahoj, pokud excel soubor se 18bm, jak číst?

  14. id
    15.října 2009 v 13:17 | # 14

    hej ..
    Snažím se spustit program ročně, ale stále na to, aby mě špatně Java verze by měla být 50,0 49,0.

    Dosent JXL pracovat s Java 1.5?
    Dejte mi vědět, jestli tam je anythign im chybí?

  15. James Zhao
    23.října 2009 v 14:36 | # 15

    Jak můžeme vložit nový řádek do plechu?
    Jak můžeme kopírovat stávající řádek formátu na nový řádek?

  16. Swamy
    28.října 2009 v 6:03 | # 16

    Ahoj Hitesh,

    Nice knihovna, zachovat to, užitečné pro lidi.
    Jak můžeme vložit nový řádek do plechu?
    Jak můžeme kopírovat stávající řádek formátu na nový řádek?

    Rgds
    Swamy.

  17. Suresh
    30.října 2009 v 22:31 | # 17

    Suresh Hitesh,

      Pěkný příklad.  Tutoriál je velmi dobrá.
     Mám jeden problém se čtením dat z aplikace Excel listu, pokud Excel list není od prvního sloupce.  Pokud se aplikace Excel list není v tablar formě
     pak, jak číst data z Excel. 
  18. Suresh
    30.října 2009 v 22:47 | # 18

    hi Hitesh,

      I havae jeden problém se čtením
     data z aplikace Excel Sheet.If Excel
     Data není v tabler podobě pak, jak se
     čtení dat.  I běžet stejný příklad, ale
     stoupá ArrayIndexOutOfBounds výjimkou.
     Plz oznámit řešení tohoto problému .....
    
  19. divs
    10.11.2009 v 05:31 | # 19

    Ahoj Hitesh,
    Tutorial byl G8 Nápověda

    Díky

  20. Ganesh
    10.11.2009 v 23:23 | # 20

    Ahoj Hitesh,

    Mám následující výjimku, kdy jsem se snažil běžet ReadXLSheet.java.

    jxl.read.biff.BiffException: Nelze uznat OLE proudu
    V jxl.read.biff.CompoundFile. (CompoundFile.java: 116)
    V jxl.read.biff.File. (File.java: 127)
    V jxl.Workbook.getWorkbook (Workbook.java: 268)
    V com.sample.ReadXLSheet.contentReading (ReadXLSheet.java: 65)
    V com.sample.ReadXLSheet.init (ReadXLSheet.java: 30)
    V com.sample.ReadXLSheet.main (ReadXLSheet.java: 20)

    Co by mohlo být důvodem.

    Zpočátku jsem dostal následující výjimkou případu, kdy jsem se snažil běžet ReadXLSheet.java.

    java.lang.UnsupportedClassVersionError: Bad version číslo. třídě souboru

    Později jsem souladu jexcelapi_2_6_12 zdroj s mým JVM a používá generované jar. Teď jsem ne prospěch tato dluh, ale já am prospěch
    jxl.read.biff.BiffException. pocínovat u být příjemný pomoci mne až k vyřešení tohoto problému.

    díky,
    Ganesh

  21. 14.listopadu 2009 v 10:04 | # 21

    Ahoj Ganesh,
    Se nesetkala s touto chybou. Bude se muset podívat na to.

    Díky,
    Hitesh Agarwal

  22. 30.listopadu 2009 v 23:03 | # 22

    Ahoj Hitesh,
    Thanku pro ur připomínky a tutorial.
    Mám problém týkající se excel list.
    Mám dvě Excel, oba jsou na stejném systému.
    Pokud se mi změna v jedné aplikaci Excel list, pak je vliv na ostatní Excel.
    Jsem schopen ping jiného systému a může odeslat zprávu jiným systémem pomocí socket programování.
    ale já nemám ponětí, jak aktualizovat Excel, který je na druhé straně systému stejné im dělá, když Excel ve stejném systému.

    Odpovězte, prosím, ASAP

    Díky předem.

  23. Deepak Sharma
    30.prosince 2009 v 0:16 | # 23

    @ Ganesh

    Zkontrolujte, zda je ur použití. XLSX místo. Xls
    JÁ brát tato výjimka (Nelze uznat OLE stream), pokud mohu použít nový XLSX soubor.
    Takže s použitím jexcelapi_2_6_12 vyřeší xlsx formát problém?

  24. Swagata
    06.01.2010 v 21:56 | # 24

    @ Ganesh

    Zkontrolujte, zda soubor test.xls je blokován .. Klikněte pravým tlačítkem myši a přejděte na vlastnosti. Pokud je zablokována, odblokovat .. Některé funkce zabezpečení v systému Windows, které blokuje některé stažené soubory, dokud si je odblokovat .. Zkuste jestli to pomůže!

  25. 07.01.2010 v 00:36 | # 25

    Díky za váš tutorial ^ _ ^

  26. CAG
    22.ledna 2010 v 12:18 | # 26

    Mockrát vám děkuji, jsem pracoval na problém, kdy jsem potřeboval řemen xls soubor (400 +) - pouze jednou. Zachránil jste mi den s touto JAR!

  27. Roshan Khandelwal
    31.ledna 2010 v 23:57 | # 27

    Ahoj všichni,
    Kód funguje docela dobře s jednou změnou.

    Po každém případě prohlášení přidat "break"
    tak revidovaném kodexu chování by bylo:

    switch (j) (
    case 0:
    System.out.println ("Zaměstnanec Id:" + rowData [j]. GetContents ());
    break;
    Případ 1:
    System.out.println ("Jméno zaměstnance:" + rowData [j]. GetContents ());
    break;
    Případ 2:
    System.out.println ("Zaměstnanec Určení:" + rowData [j]. GetContents ());
    break;
    default:
    break;
    )

    S kódem, jak je uvedeno, že smyčky přes všechny tři podmínky, a dává chybný výstup.
    Díky za kód.

  28. Paramjit
    18.února 2010 v 3:26 | # 28

    Bylo velmi užitečné ... skvělá práce

  29. Manjunath
    15.března 2010 v 11:41 | # 29

    @ Ganesh

    JÁ am prospěch člen určitý týž dluh jako Ganesh dostal. Můj soubor je uložen jako. Xls a odblokování, ale stále dostává stejnou BiffException.Please Nápověda

  30. Prema GV
    25.března 2010 v 4:41 | # 30

    Ahoj díky za kód ... ... ...
    Kód pracoval pokuta Když spustím poprvé dostal výsledek příliš ....

    Ale když jsem běžet stejný kód po třech časech exection ... ... její poskytování soubor nebyl nalezen a null bod výjimkou ... ... ... .. cesta jméno je také správná .... plzzzz mi zpátky s řešením co nejrychleji ... ... ..

  31. Prema GV
    25.března 2010 v 04:49 | # 31

    Ahoj díky za kód ... ... ...
    Kód pracoval pokuta Když spustím poprvé dostal výsledek příliš ....

    Ale když jsem běžet stejný kód po třech časech exection ... ... její poskytování soubor nebyl nalezen a null bod výjimkou ... ... ... .. plzzzz mi zpátky s řešením co nejrychleji ... ... ..

    Díky předem ... ... ... ... ... ...

  32. sadanala
    13.dubna 2010 v 00:50 | # 32

    Kde získám jar soubor?

  33. Menaka
    19.dubna 2010 v 22:53 | # 33

    Ahoj Hitesh,
    Činit u mít nějakou představu o tom písemně. Xlsx soubory. Pokud ano, může u pls sdílet některé ukázky kódu.
    Díky

  34. 21.dubna 2010 v 11:46 | # 34

    Ahoj Meneka,
    Poslední Apache POI podporuje xslx souboru.

    Díky,
    Hitesh Agarwal

  35. Gaurav Arora
    06.05.2010 v 17:22 | # 35

    Stáhl jsem si váš kód a tryied jej spustit v ubuntu platformě s jdk6
    ale v době běhu jeho ukázal tento
    Výjimka ve vlákně \ Main \ java.lang.NoClassDefFoundError: ReadXLSheet
    V java.lang.Class.initializeClass (libgcj.so.10)
    Způsobena: java.lang.ClassNotFoundException: jxl.Cell nebyl nalezen v gnu.gcj.runtime.SystemClassLoader (URL adresy = [soubor :./], mateřské = gnu.gcj.runtime.ExtensionClassLoader (adresy URL = [], rodiče = null ))
    V java.net.URLClassLoader.findClass (libgcj.so.10)
    V java.lang.ClassLoader.loadClass (libgcj.so.10)
    V java.lang.ClassLoader.loadClass (libgcj.so.10)
    V java.lang.Class.initializeClass (libgcj.so.10)

    místo výstupu

    Můžete mi prosím řekněte mi co je problém s mým kódem nejsem schopen dostat a jeho urget

    hledá k pomoci ...
    Díky předem

  36. 08.05.2010 v 02:09 | # 36

    Ahoj Gaurav,
    Budete muset přidat JExcel API ve vaší třídě cestu, zatímco sestavení java soubor, můžete si stáhnout JExcelAPI z http://jexcelapi.sourceforge.net/

    Díky,
    Hitesh Agarwal

  37. Tomáš
    24.května 2010 v 7:23 | # 37

    Ahoj,

    Napsal jsem tyto funkce:

    veřejné čtení void () throws IOException (
    Soubor inputWorkbook = new File ("c: / temp / test.xls");
    Sešit w;
    try (
    w = Workbook.getWorkbook (inputWorkbook);
    ...
    ) Chytit (BiffException e) (
    e.printStackTrace ();
    )
    )

    Když jsem se spustit tuto funkci v rámci běžného Java aplikací spolu se vším, co JFace funguje. Ale když spustím této funkce v rámci projektu RCP dostanu následující chybu:

    java.lang.ClassNotFoundException: jxl.read.biff.BiffException
    V org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal (BundleLoader.java: 494)
    V org.eclipse.osgi.internal.loader.BundleLoader.findClass (BundleLoader.java: 410)
    V org.eclipse.osgi.internal.loader.BundleLoader.findClass (BundleLoader.java: 398)
    V org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass (DefaultClassLoader.java: 105)
    V java.lang.ClassLoader.loadClass (Neznámý Source)
    V model.CollectionManager.newOilFor (CollectionManager.java: 120)
    V model.CollectionManager.loadCollection (CollectionManager.java: 107)
    V model.CollectionManager.getCollection (CollectionManager.java: 56)
    V hellooil.CollectionViewContentProvider.getElements (CollectionViewContentProvider.java: 39)
    ...

    Má někdo vědět, co by mohlo být špatně?

  38. Šan
    29.června 2010 v 1:24 | # 38

    JÁ am prospěch tato dluh, když jsem spustit kód posta výše. I dont opravdu porozumět problému. Díky předem.

    jxl.read.biff.BiffException: Nelze uznat OLE proudu
    V jxl.read.biff.CompoundFile. (CompoundFile.java: 116)
    V jxl.read.biff.File. (File.java: 127)
    V jxl.Workbook.getWorkbook (Workbook.java: 268)
    V ReadXLSheet.contentReading (ReadXLSheet.java: 55)
    V ReadXLSheet.init (ReadXLSheet.java: 20)
    V ReadXLSheet.main (ReadXLSheet.java: 109)

  39. Neeraj
    02.07.2010 v 08:08 | # 39

    Může mi někdo pomoct písemně obsah souboru aplikace Excel do souboru XML v Javě.

    Vlastně im schopen číst soubor aplikace Excel, ale snažím se výstupní data do souboru XML pomocí objektu FileWriter ale nefunguje ...
    Uveďte prosím mi nějaký lepší kód.
    _________________________________________________
    To je můj kód, který se snažím spustit:

    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.util .*;
    import jxl.Cell;
    import jxl.CellType;
    import jxl.Sheet;
    import jxl.Workbook;
    import jxl.read.biff.BiffException;

    public class ReadExcel (

    public static void main (String [] args) throws IOException (
    Řetězec Vstupní_soubor = "c: / data.xls";

    Soubor inputWorkbook = new File (Vstupní_soubor);

    Soubor fileout = new File ("C: / data.xml");
    FileWriter FW = new FileWriter (fileout);

    fw.write ("");

    Sešit w;
    try (
    w = Workbook.getWorkbook (inputWorkbook);
    / / Získání prvního listu
    List list = w.getSheet (0);
    / / Smyčka přes prvních 10 sloupců a řádků

    for (int i = 0; sheet.getColumns i <(); i + +) (
    for (int j = 0; j <sheet.getRows (); j + +) (
    Buňka buňky = sheet.getCell (j, i);
    / / CellType type = cell.getType ();
    if (cell.getType () == CellType.LABEL) (
    fw.write ("" + cell.getContents ()+"");
    )

    if (cell.getType () == CellType.NUMBER) (
    fw.write ("" + cell.getContents ()+"");
    )

    )
    )
    fw.write ("");

    ) Chytit (BiffException e) (
    e.printStackTrace ();
    )
    )
    )

  40. Neeraj
    02.07.2010 v 08:11 | # 40

    Může mi někdo pomoct písemně obsah souboru aplikace Excel do souboru XML v Javě.

    Vlastně im schopen číst soubor aplikace Excel, ale snažím se výstupní data do souboru XML pomocí objektu FileWriter ale nefunguje ...
    Uveďte prosím mi nějaký lepší kód.
    _________________________________________________
    To je můj kód, který se snažím spustit:
    ** Poznámka: Nebyl jsem schopen napsat značky na této stránce, takže jsem použil složených závorek pro značky namísto hranaté závorky

    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.util .*;
    import jxl.Cell;
    import jxl.CellType;
    import jxl.Sheet;
    import jxl.Workbook;
    import jxl.read.biff.BiffException;

    public class ReadExcel (

    public static void main (String [] args) throws IOException (
    Řetězec Vstupní_soubor = "c: / data.xls";

    Soubor inputWorkbook = new File (Vstupní_soubor);

    Soubor fileout = new File ("C: / data.xml");
    FileWriter FW = new FileWriter (fileout);

    fw.write ("() root");

    Sešit w;
    try (
    w = Workbook.getWorkbook (inputWorkbook);
    / / Získání prvního listu
    List list = w.getSheet (0);
    / / Smyčka přes prvních 10 sloupců a řádků

    for (int i = 0; sheet.getColumns i <(); i + +) (
    for (int j = 0; j <sheet.getRows (); j + +) (
    Buňka buňky = sheet.getCell (j, i);
    / / CellType type = cell.getType ();
    if (cell.getType () == CellType.LABEL) (
    fw.write ("() značka" + cell.getContents ()+"{/ značku) ");
    )

    if (cell.getType () == CellType.NUMBER) (
    fw.write ("() značka" + cell.getContents ()+"{/ značku) ");
    )

    )
    )
    fw.write ("(/ root)");

    ) Chytit (BiffException e) (
    e.printStackTrace ();
    )
    )
    )

  41. Imran
    26.července 2010 v 1:57 | # 41

    Ahoj může někdo mi říct, odkud si mám stáhnout jxl balíčku a kde mám umístit zkompilovat můj zdrojový kód.

  1. Ne Zpětné dosud.