Rad s upravljanjem preglednikom

Rad s upravljanjem preglednikom

Rad s upravljanjem preglednikom

Ovaj vodič pokazuje kako stvoriti, učitati, mijenjati i pohraniti Excel radne sveske pomoću Aspose.Cells FOSS za Java. Naučit ćete raditi s programom Workbook, WorksheetCollection, Worksheet, Cells, i Cell U tom slučaju, u skladu s člankom 21. stavkom 1. točkom (a) Uredbe (EU) br. 575/2013:.


Stvaranje novog radnog spiska

Koristite konstruktor bez argumenata za kreiranje praznog radnog papira. Jedan prazan radni list imenovanog Sheet1 se automatski dodaje.

import com.aspose.cells.foss.Workbook;
import com.aspose.cells.foss.WorksheetCollection;
import com.aspose.cells.foss.Worksheet;

Workbook workbook = new Workbook();
WorksheetCollection sheets = workbook.getWorksheets();
Worksheet sheet = sheets.get(0);
System.out.println("Sheet name: " + sheet.getName()); // Sheet1

Upisivanje radne sveske iz datoteke

Predajte put za datoteku na Workbook(fileName) Konstruktor otvoriti postojeći .xlsx ili: .ods - Koristite datoteku. Workbook(fileName, options) za snabdijevanje LoadOptions Kada ti je potrebno. za kontrolu otkrivanja formata ili obrade lozinke.

import com.aspose.cells.foss.Workbook;
import com.aspose.cells.foss.LoadOptions;

// Simple load
Workbook workbook = new Workbook("data/report.xlsx");

// Load with explicit options
LoadOptions opts = new LoadOptions();
Workbook workbookWithOpts = new Workbook("data/report.xlsx", opts);

Upisivanje radne sveske iz toka

Workbook(stream) i u članku 1. Workbook(stream, options) prihvatiti bilo koji java.io.InputStream. Ovo je korisno kada datoteka dolazi iz mrežnog resursa, baze podataka BLOB ili u memoriji bajtni niz.

import com.aspose.cells.foss.Workbook;
import java.io.FileInputStream;
import java.io.InputStream;

try (InputStream is = new FileInputStream("data/template.xlsx")) {
    Workbook workbook = new Workbook(is);
    System.out.println("Worksheets: " + workbook.getWorksheets().getCount());
}

Pristup radnim listovima i upravljanje njima

Workbook.getWorksheets() vraća a WorksheetCollection.Pronađite listove po indeksu ili po imenu, ponoviti na svim listovima i dodati ili ukloniti liste prema potrebi.

import com.aspose.cells.foss.Workbook;
import com.aspose.cells.foss.WorksheetCollection;
import com.aspose.cells.foss.Worksheet;

Workbook workbook = new Workbook();
WorksheetCollection sheets = workbook.getWorksheets();

// Access by index
Worksheet first = sheets.get(0);
System.out.println(first.getName()); // Sheet1

// Add a named sheet
int idx = sheets.add("Summary");
Worksheet summary = sheets.get(idx);
summary.setName("Summary");

// Iterate all sheets
for (Worksheet ws : sheets) {
    System.out.println("Sheet: " + ws.getName());
}

// Remove a sheet by name
sheets.removeAt("Sheet1");
System.out.println("Remaining sheets: " + sheets.getCount());

Čitanje i pisanje vrijednosti stanica

Navigacija do ćelije pomoću: Worksheet.getCells(), što vraća: Cells -Skupljenje. Pronaći Cell U ovom slučaju, u skladu s člankom 21. stavkom 1. točkom (a) Uredbe (EU) br. "A1"U ovom slučaju, u skladu s člankom 77. stavku 1. točka (a) Uredbe (EU) br. putValue() da napiše primitivne vrijednosti i getValue() / getStringValue() čitati -Vrati ih.

import com.aspose.cells.foss.Workbook;
import com.aspose.cells.foss.Worksheet;
import com.aspose.cells.foss.Cells;
import com.aspose.cells.foss.Cell;

Workbook workbook = new Workbook();
WorksheetCollection sheets = workbook.getWorksheets();
Worksheet sheet = sheets.get(0);
Cells cells = sheet.getCells();

// Write values
cells.get("A1").putValue("Product");
cells.get("B1").putValue("Units Sold");

// Write by row/column index (0-based)
Cell a2 = cells.get(1, 0);
a2.putValue("Widget A");

Cell b2 = cells.get(1, 1);
b2.putValue(1200);

// Read back
System.out.println(a2.getStringValue()); // Widget A
System.out.println(b2.getValue());       // 1200

Postavljanje formula stanica

Predajte niz formula u ćeliju putem: setFormula(). Aspose.Cells procjenjuje formule Ako je to moguće, mora se provesti proces ispitivanja.

import com.aspose.cells.foss.Workbook;
import com.aspose.cells.foss.Cells;
import com.aspose.cells.foss.Cell;

Workbook workbook = new Workbook();
WorksheetCollection sheets = workbook.getWorksheets();
Cells cells = sheets.get(0).getCells();

cells.get("A1").putValue(100);
cells.get("A2").putValue(200);

Cell a3 = cells.get("A3");
a3.setFormula("=SUM(A1:A2)");
System.out.println("Formula: " + a3.getFormula()); // =SUM(A1:A2)

Čuvanje radnog spisa

Upotreba: Workbook.save(fileName) Izlazni format je: određeno proširenjem datoteke; korištenje .xlsx za Excelove radne svrhe.

import com.aspose.cells.foss.Workbook;

Workbook workbook = new Workbook();
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Hello");

// Save to file -- format inferred from .xlsx extension
workbook.save("output/result.xlsx");

Oslobađanje resursa

Workbook uređaji za rušenje AutoCloseable.Koristite blok za ispitivanje resursa kako biste osigurali da se u skladu s člankom 1. stavkom 2. točka (a) i 3. stavku . U tom slučaju, u skladu s člankom 3. stavkom 1. točka (a) Uredbe (EU) br.

import com.aspose.cells.foss.Workbook;

try (Workbook workbook = new Workbook("data/large.xlsx")) {
    workbook.save("output/large_modified.xlsx");
}
// workbook.close() called automatically

Savjeti i najbolje prakse

  • Uvijek koristite probne resurse (try (Workbook wb = new Workbook(...))) za velike količine datoteke kako bi se izbjeglo držanje rukovodećih datotek otvorenih.
  • Prefer cells.get(row, column) prelaziti cells.get(cellName) u vrućim petama; Preopterećenje sa cijelim brojem sprečava ponavljanje analize imena ćelija.
  • Zovi me. workbook.getWorksheets().getCount() prije pristupa listovima po indeksu kako bi se izbjeglo IndexOutOfBoundsException.
  • Nazivite svoje listove izričito s: setName() nakon add() Tako da kod u daljnjem smjeru može Tražite ih po imenu, a ne prema krhkom indeksu.
  • Ne oslanjajte se na rezultate formula odmah nakon primjene. setFormula(); prije ili poslije; Ponovno učitati ako trebate izračunati vrijednosti u istoj sesiji.

Zajednički problemi

IzdavanjeUzrokPopraviti
WorkbookLoadException na: new Workbook(fileName)Neispravna putanja datoteke ili zaključana datotekamaProvjerite da put postoji i da je čitljiv; zatvoriti druge aplikacije koje sadrže datoteku
get(index) Baci IndexOutOfBoundsExceptionIndeks lista nakon getCount() - 1Čekaj. sheets.getCount() prije pristupa; upotrebu add() za kreiranje novog lista
Formula vraća prazna ćelija getValue()Slika koja se ne izračunava automatski u memorijiSpasite radnu svesku i ponovno je učitati kako biste dobili rezultate formula.
Izlaz datoteka je pokvarena nakon save()Neispravno proširenje datotekeZavršite s: .xlsx; format je zaključen iz proširenja

FAQ

Kako preimenovati radni list?

-Primite… Worksheet predmet po indeksu od WorksheetCollection i pozovi. setName(name) s novim prikaznim imenom:

workbook.getWorksheets().get(0).setName("Sales Data");

Kako provjeriti koliko stranica radionica ima?

Zovi me. getCount() na dnevnom redu WorksheetCollection vraćeno od strane: Workbook.getWorksheets() U ovom slučaju, u skladu s člankom 72. stavkom 1. točka (a) Uredbe (EU) br. 1071/2013:

int count = workbook.getWorksheets().getCount();

Mogu li dodati više listova u jednom pozivu?

Ne, nazovi. worksheets.add(sheetName) U svakom od tih slučajeva, naziv se može koristiti samo jednom po listu. novog kreiranog lista.

Kako provjeriti vrstu vrijednosti ćelije?

-Primite… Cell po imenu i pozivu getType(), što vraća: CellValueType vrijednost:

Cell cell = cells.get("A1");
System.out.println(cell.getType()); // CellValueType enum value

Svrha referentnog API-a

Klasa / metodaOpisivanje
Workbook()Stvara prazan radni svitak s jednim praznim listom
Workbook(fileName)Upita radnu svesku s puta datoteke
Workbook(stream)Uplatlja radnu svesku iz InputStream
Workbook(fileName, options)Uplatlja radnu svesku s: LoadOptions
Workbook.getWorksheets()Vrati se: WorksheetCollection
Workbook.save(fileName)Spasiti u datoteku (format zaključen iz proširenja)
Workbook.save(stream, format)Sačuva na struju s eksplicitnim SaveFormat
WorksheetCollection.get(index)Iznos od 0 do 100 EUR/m2
WorksheetCollection.get(name)Iznos podataka po imenu
WorksheetCollection.add(sheetName)Dodaje imenovani list; vraća svoj indeks
WorksheetCollection.getCount()Broj stranica u radnom svesku
WorksheetCollection.removeAt(sheetName)Uklanja list po imenu
Worksheet.getCells()Vrati se: Cells Slika za ovaj list
Worksheet.getName() / setName()Dobija ili postavlja ime kartice za list
Cells.get(cellName)Vrati a. Cell U ovom slučaju, u skladu s člankom 21. stavkom 1. točkom (a) Uredbe (EU) br. 575/2013.
Cells.get(row, column)Vrati a. Cell U skladu s člankom 21. stavkom 1. točkom (a) i članom 15. stavku 2. točkama 3. i 4.
Cell.putValue(value)Uloži vrijednost u ćeliju.
Cell.getValue()Čita vrijednost ćelije kao: Object
Cell.getStringValue()Čita vrijednost ćelije kao: String
Cell.setFormula(formula)Uređuje niz formula (npr. “=SUM(A1:A2)”)
LoadOptionsSvrha za upotrebu:
SaveFormatBroj konstanti formata (format je zaključen iz proširenja datoteke; nije proslijeđen na save())

Također pogledajte:

 Hrvatski