Programiranje

Odlično v Excelu z Javo

Ne glede na to, ali imate bilance stanja, prenose podatkov o računu, izračune davkov ali položnice, so vsi navadno v Microsoft Excelu. Strokovnjaki, ki niso IT, se počutijo udobno, če uporabljajo Microsoft Excel kot tehnologijo izmenjave podatkov. API Jakarta POI (Poor Obfuscation Implementation) je odličen način, da programerji Java dostopajo do Microsoftovih formatov dokumentov. Najbolj zrel API iz Džakarte POI je API HSSF (Horrible Spreadsheet Format), ki dostopa do dokumentov Microsoft Excel.

V tem članku vas vodim skozi korake za ustvarjanje in branje Excelovih dokumentov ter za uporabo pisav in oblikovanje celic - vse z uporabo Jave.

Opomba: Izvorno kodo za vse primere v tem članku lahko prenesete iz virov.

POI terminologija

Ključni izrazi, povezani s POI v Džakarti, so naslednji:

  • POIFS (datotečni sistem za slabo izvedbo zamegljenosti): Java API-ji za branje in pisanje OLE (Object Linking and Embedding) 2 sestavljena formata dokumentov
  • HSSF (grozljiva oblika preglednice): Java API za branje Microsoft Excela
  • HDF (grozljiva oblika dokumenta): Java API za branje in pisanje Microsoft Word 97
  • HPSF (grozljiva oblika nabora lastnosti): Java API za branje naborov lastnosti z uporabo (samo) Java

Ustvarite Excelov dokument

API Jakarta POI se lahko uporablja za programsko ustvarjanje Excelovega dokumenta. Pomembni koraki so:

  • Ustvarite delovni zvezek: Delovni zvezek HSSFWorkbook = nov HSSFWorkbook ();
  • Ustvarite nov delovni list v delovnem zvezku in ga poimenujte "Java Excels": HSSFSheet list = workbook.createSheet ("Java Excels");
  • Ustvari novo vrstico na listu: HSSFRow vrstica = list.createRow ((kratek) 0);
  • Ustvari celico v vrstici: HSSFCell celica = row.createCell ((kratka) 0);
  • V celico vnesite nekaj vsebine: cell.setCellValue ("Pokal XL");
  • Delovni zvezek zapišite v datotečni sistem: workbook.write (fileOutputStream);

Preberite podatke iz Excelovega dokumenta

V tem primeru boste videli, kako berete vrednosti iz Excelovega dokumenta.

Predpostavimo, da je to naš Excelov list:

ime zaposlenegaSpecializacijaOznaka
AnbuProgramiranjeVišji programer
JasonBančna industrijaPoslovni analitik
RameshZbirke podatkovDBA
MackyBRačunovodstvoVodja dostave

Ključni koraki pri branju Excelovega lista so naslednji:

  • Ustvarite nov sklic na dokument Excel: Delovni zvezek HSFWorkbook = nov HSSFWorkbook (nov FileInputStream (fileToBeRead));.
  • Glejte list: Privzeto je prvi list v Excelovem dokumentu sklic 0: HSSFSheet list = workbook.getSheetAt (0);. Na list se lahko sklicujemo tudi po imenu. Predpostavimo, da ima Excelov list privzeto ime "Sheet1". Sklicuje se lahko na naslednji način: HSSFSheet list = workbook.getSheet ("Sheet1");.
  • Glejte vrstico: Vrstica HSSFRow = sheet.getRow (0);.
  • Glejte celico v vrstici: HSSFCell celica = row.getCell ((kratka) 0);.
  • Pridobite vrednosti v tej celici: cell.getStringCellValue ();.

Praktičen primer

Zdaj pa predpostavimo, da želimo videti seznam vseh prijavljenih metod in spremenljivk članov v datoteki jar. Idealno bi bilo imeti zbirni seznam vseh informacij v eni sami datoteki. Informacije bi radi videli tako, da so imena razredov v prvem stolpcu, deklarirana polja v drugem stolpcu in deklarirane metode v tretjem stolpcu, naslovi stolpcev pa rdeči.

Program bo moral opraviti naslednje dejavnosti:

  • Razpakirajte datoteko jar
  • Preberite vse datoteke učil v datoteki jar
  • Razrede naložite v datoteko jar
  • Z uporabo refleksije dobite deklarirane metode in polja
  • Podatke o predavanju zapišite v Excelov list s pomočjo POI v Džakarti

Osredotočimo se le na zanimive korake uporabe POI v Džakarti:

  • Ustvarite nov Excelov dokument: delovni zvezek = nov HSSFWorkbook ();
  • V tem dokumentu naredite delovni list in mu dajte ime: sheet = workbook.createSheet ("Informacije o razredu Java");
  • Nastavite širino prvih treh stolpcev: sheet.setColumnWidth ((kratek) 0, (kratek) 10000);
  • Ustvari vrstico glave: HSSFRow vrstica = list.createRow ((kratek) 0);
  • Ustvarite in nastavite slog pisave in celice:
     HSSFFont font = workbook.createFont (); font.setColor (HSSFFont.COLOR_RED); font.setBoldweight (HSSFFont.BOLDWEIGHT_BOLD); // Ustvari slog HSSFCellStyle cellStyle = workbook.createCellStyle (); cellStyle.setFont (pisava); 
  • Uporabite slog celice:
     HSSFCell celica = row.createCell ((kratka) 0); cell.setCellStyle (cellStyle); cell.setCellType (HSSFCell.CELL_TYPE_STRING); cell.setCellValue ("Ime razreda"); 
  • Napišite izhodno datoteko:
     FileOutputStream fOut = novo FileOutputStream (outputFile); // napišemo Excelov delovni zvezek.write (fOut); fOut.flush (); // Končano. Zapri. fOut.close (); 

Povzetek

Kot je prikazano v tem članku, razvijalcem Java ni več treba trgati podatkov v Excelovih listih. Programsko lahko dostopamo do dokumentov Excel. Popijte skodelico Jave in se odlikujte v Excelu!

Elango Sundaram je izkušen programer Jave z raziskovalnimi interesi na področju arhitekture porazdeljenega računalništva, agenske tehnologije in objektno usmerjene metodologije. Magistriral je iz računalništva na univerzi Virginia Tech University in napisal Distributed computing z uporabo vtičnikov Tail Jini in Websphere Studio Application Developer Tail (za WSAD 4.0).

Preberite več o tej temi

  • Prenesite izvorno kodo, ki spremlja ta članek

    //images.techhive.com/downloads/idge/imported/article/jvw/2004/03/jw-0322-poi.zip

  • Spletno mesto POI v Džakarti

    //jakarta.apache.org/poi/

  • Za več informacij o POI preberite "To je POI-fect," Tony Sintes (JavaWorld, Maj 2002)

    //www.javaworld.com/javaworld/javaqa/2002-05/01-qa-0503-excel3.html

  • Za več orodij Java poiščite Orodja za razvoj odsek JavaWorld 's Aktualni indeks

    //www.javaworld.com/channel_content/jw-tools-index.shtml

  • Za več člankov o odprtokodnih orodjih glejte Erik Swenson Odprtokodni profil stolpec

    //www.javaworld.com/columns/jw-opensource-index.shtml

To zgodbo "Odlično v Excelu z Javo" je prvotno objavil JavaWorld.

$config[zx-auto] not found$config[zx-overlay] not found