Odprtokodna skupnost je ustvarila veliko odprtokodnih projektov Java, ki segajo od grafične programske opreme do ogrodja iger do urejevalnikov besedil. V tej objavi predstavljam projekt odprtokodne knjižnice za branje in pisanje preglednic Microsoft Excel.
Priporočanje knjižnice preglednic
V: Prosili so me, naj razširim programsko opremo za preglednice, ki temelji na Javi, za branje in pisanje preglednic Excel. Ali lahko priporočite odprtokodno knjižnico Java, ki mi bo pomagala pri tej nalogi?
A: Morda boste želeli preveriti JExcelAPI, ki je zrela odprtokodna knjižnica, ki temelji na Javi in vam omogoča branje, pisanje in spreminjanje preglednic Excel. Tu je nekaj njegovih številnih lastnosti:
- Bere podatke iz delovnih zvezkov Excel 95, 97, 2000, XP in 2003
- Bere in piše formule (samo Excel 97 in novejši)
- Ustvari preglednice v formatu Excel 2000
- Podpira oblikovanje pisave, številke in datuma
- Podpira senčenje celic, meje celic in barvanje celic
- Spremeni obstoječe delovne liste
- Podpira kopiranje grafikona
- Podpira vstavljanje in kopiranje slik v preglednice
JExcelAPI je razvil Andrew Kahn in je bil izdan pod GNU Lesser General Public License.
Prenos knjižnice JExcelAPI
V: Kako prenesem JExcelAPI?
A: Za prenos JExcelAPI izvedite naslednje korake:
- Usmerite brskalnik na stran SourceForge JExcelAPI.
- Kliknite
jexcelapi
povezava. - Na nastali strani kliknite eno od povezav do mape. Na primer, kliknil sem
2.6.12
povezava. - Na nastali strani kliknite ime datoteke arhiva distribucije. Na primer, kliknil sem
jexcelapi_2_6_12.zip
povezava. - Po kratkem zakasnitvi vas bo brskalnik pozval, da shranite to datoteko. Pojdi naprej in shrani datoteko.
Po prenosu arhivirajte to datoteko. Upoštevajte a jexcelapi
domači imenik v jexcelapi_2_6_12
imenik.
Prikaz knjižnice JExcelAPI
V: Ali knjižnica JExcelAPI vsebuje predstavitve?
A: JExcelAPI jexcelapi
domači imenik vsebuje jxl.jar
datoteka, ki vsebuje predstavitve za branje, pisanje in kopiranje preglednic.
Prebrana predstavitev prebere obstoječo preglednico in jo pretvori v vrednost, ločeno z vejico (CSV) ali format XML prek -csv
ali -xml
možnost ukazne vrstice. Upoštevajte naslednje primere:
java -jar jxl.jar -csv budget.xls java -jar jxl.jar -xml budget.xls
Ti primeri se glasijo proračun.xls
in vsebino oddajte v obliki CSV in XML na standardni izhod. Ko ne -csv
niti -xml
je določeno, -csv
se domneva.
Demo za pisanje ustvari vzorčno preglednico, ki vključuje formule, obrobe, slike in še več. Ta preglednica se ustvari z določitvijo -piši
možnost ukazne vrstice, kot je prikazano spodaj:
java -jar jxl.jar -piši vzorec.xls
Slika 1 prikazuje del nastalega sample.xls
preglednico.
Slika 1. Za dostop do preglednice sample.xls sem uporabil LibreOffice Calc
Kopija demo kopira vzorčno preglednico jxlrwtest.xls
, ki je shranjen v istem imeniku kot jxl.jar
, v novo preglednico. V preglednici, ki nastane, je prvi list (izvirnik) nespremenjen, drugi list (spremenjen) pa vsebuje spremenjene vrednosti.
Ta predstavitev se ustvari z določitvijo -rw
možnost ukazne vrstice, ki ji sledi jxlrwtest.xls
in ime izhodne preglednice. Razmislite o naslednji ukazni vrstici:
java -jar jxl.jar -rw jxlrwtest.xls copy.xls
Ta ukazna vrstica kopira jxlrwtest.xls
do copy.xls
. Slika 2 prikazuje drugi (spremenjeni) list v programu LibreOffice Calc.
Slika 2. Kliknite izvirni in spremenjeni zavihek, da si ogledate izvirne in spremenjene liste
Vključno z JExcelAPI za prevajanje in izvajanje
V: Kako vključim JExcelAPI pri sestavljanju izvorne kode in zagonu aplikacije?
A: Če želite vključiti JExcelAPI pri sestavljanju izvorne kode in zagonu aplikacije, naredite nekaj od tega:
- Dodajte
jexcelapi
domači imenikjxl.jar
datoteko na vašZAPRTI
spremenljivka okolja. - Vključi
jxl.jar
prekjavac
injava
programa-cp
možnost ukazne vrstice.
Programiranje z JExcelAPI
V: Kako ustvarim programe Java, ki uporabljajo JExcelAPI?
A: The jexcelapi
domači imenik vključuje tutorial.html
datoteka, ki predstavlja osnovno vadnico o programiranju z JExcelAPI. Vadnica vam pokaže, kako berete, pišete in kopirate preglednice. Vadnica obravnava tudi oblikovanje.
jexcelapi
vključuje tudi a dokumenti
podimenik, ki omogoča dostop do obsežne dokumentacije API. Usmerite svoj spletni brskalnik v ta imenik index.html
datoteko in lahko raziščete vrste v štirih dokumentiranih paketih te knjižnice:
jxl
: vrste glavnega paketajxl.demo
: vrste za različne predstavitvejxl.format
: vrste, povezane z oblikovanjemjxl.write
: vrste za zapisovanje v preglednico
Upoštevajte, da ta seznam ni izčrpen. Dodatni paketi, kot so jxl.read
so prisotni, vendar niso dokumentirani. Izvedite, če želite izvedeti več o dodatnih paketih jar tvf jxl.jar
in preučite informacije o paketu v nastalem seznamu JAR.
Za lažji začetek uporabe JExcelAPI sem ustvaril preprost JExcelAPIDemo
aplikacija, ki prikazuje ustvarjanje nove preglednice, ki je shranjena v izhod.xls
in nato branje in izpisovanje vsebine te preglednice. Oglejte si seznam 1.
Seznam 1. Pisanje in branje preproste preglednice
import java.io.File; import java.io.IOException; uvoz jxl.Cell; uvoz jxl.Sheet; import jxl.Workbook; uvoz jxl.read.biff.BiffException; uvoz jxl.write.Label; uvoz jxl.write.Number; uvoz jxl.write.WritableSheet; uvoz jxl.write.WritableWorkbook; uvoz jxl.write.WriteException; javni razred JExcelAPIDemo {public static void main (String [] args) vrže BiffException, IOException, WriteException {WritableWorkbook wworkbook; wworkbook = Workbook.createWorkbook (nova datoteka ("output.xls")); WritableSheet wsheet = wworkbook.createSheet ("Prvi list", 0); Oznaka nalepke = nova nalepka (0, 2, "Zapis nalepke"); wsheet.addCell (nalepka); Številka številka = nova številka (3, 4, 3.1459); wsheet.addCell (številka); wworkbook.write (); wworkbook.close (); Delovni zvezek delovnega zvezka = Workbook.getWorkbook (nova datoteka ("output.xls")); List stanja = workbook.getSheet (0); Celica cell1 = sheet.getCell (0, 2); System.out.println (cell1.getContents ()); Celica cell2 = sheet.getCell (3, 4); System.out.println (cell2.getContents ()); delovni zvezek.close (); }}
Seznam 1 najprej ustvari zapisljiv delovni zvezek, tako da prikliče enega od Delovni zvezek
tovarniške metode. Nato se za ta delovni zvezek ustvari zapisljiv list, nato pa se kot vrednosti celic lista dodata nalepka in številka. Nato se delovni zvezek napiše in zapre.
Seznam 1 se nadaljuje s pridobivanjem delovnega zvezka, povezanega z izhod.xls
in branje njegove vsebine. The getSheet ()
metoda omogoča dostop do prvega lista v tem delovnem zvezku. Svoje getCell ()
za dostop do dveh celic, katerih vsebina se nato izpiše,
Predvidevam da jxl.jar
se nahaja v trenutnem imeniku, za sestavljanje seznama 1 izvedite naslednji ukaz:
javac -cp jxl.jar JExcelAPIDemo.java
Ob predpostavki uspeha izvedite naslednji ukaz za zagon JExcelAPIDemo
:
java -cp jxl.jar ;. JExcelAPIDemo
Upoštevati morate naslednje rezultate:
Zapis na založbi 3.146
Slika 3 prikazuje vas izhod.xls
v kontekstu LibreOffice.
Slika 3. Samotni list prikazuje dve vrednosti celic
Kaj je naslednje?
Naslednjič vam predstavim sklop ugank, ki govorijo o razvoju knjižnic Java. Ti zmedo se osredotočajo na združljivost izvorne in binarne kode med odjemalskimi programi in knjižnicami, ki jih ti programi uporabljajo.
prenos Prenos vira Pridobite izvorno kodo za aplikacije te objave. Ustvaril Jeff Friesen za JavaWorldZa razvoj poštne kode je bila uporabljena naslednja programska oprema:
- 64-bitni JDK 7u6
- JExcelAPI 2.6.12
Koda pošte je bila preizkušena na naslednjih platformah:
- JVM v 64-bitnem sistemu Windows 7 SP1
To zgodbo "Branje in pisanje Excelovih preglednic" je prvotno objavil JavaWorld.