Johdanto
Cell-luokka on perusyksikkö Aspose.Cells FOSS for Java -kirjastossa. Se tallentaa tyyppisiä arvoja, paljastaa niiden ajoaikatyypin CellValueType-enumin kautta, säilyttää kaavarivit, jotka Excel arvioi, ja tarjoaa yhtenäisen merkkijonoesityksen getStringValue()-menetelmällä. Tässä julkaisussa tarkastellaan ydinsolun API:a yksityiskohtaisesti vahvistettujen esimerkkien avulla.
Kaikki alla olevat koodiesimerkit käyttävät Maven‑riippuvuutta:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>cells-foss</artifactId>
<version>1.0.0</version>
</dependency>
Core Cell API
Tyyppiarvojen tallentaminen putValue()-menetelmällä
Cell.putValue() hyväksyy kuusi Java-tyyppiä: String, int, double, boolean,
LocalDateTime ja Object. Jokainen kutsu asettaa solun sisäisen arvon ja määrittää
CellValueType, jonka cell.getType() palauttaa.
import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.CellValueType;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
import java.time.LocalDateTime;
try (Workbook workbook = new Workbook()) {
Worksheet sheet = workbook.getWorksheets().get(0);
Cell a1 = sheet.getCells().get("A1");
a1.putValue("Revenue");
assert a1.getType() == CellValueType.STRING;
Cell b1 = sheet.getCells().get("B1");
b1.putValue(42500.75);
assert b1.getType() == CellValueType.NUMBER;
Cell c1 = sheet.getCells().get("C1");
c1.putValue(true);
assert c1.getType() == CellValueType.BOOLEAN;
Cell d1 = sheet.getCells().get("D1");
d1.putValue(LocalDateTime.of(2026, 4, 27, 9, 0, 0));
assert d1.getType() == CellValueType.DATE_TIME;
workbook.save("typed.xlsx");
}
Tyhjät solut palauttavat CellValueType.BLANK kohteesta getType(). Kokonaislukuarvot, jotka on tallennettu
putValue(int) pyörivän läpiviennin kautta XLSX-serialisoinnin läpi ilman desimaalipistettä —
getStringValue() palauttaa "123" eikä "123.0".
Arvojen tarkastelu suorituksen aikana
cell.getValue() palauttaa raakan tallennetun arvon muodossa Object. cell.getStringValue() palauttaa kieliriippumattoman merkkijonoesityksen, joka soveltuu jatkokäsittelyyn tai näyttöön. Haarautuminen CellValueType:n perusteella on suositeltu malli tyyppiturvalliseen arvon poimintaan:
import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.CellValueType;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
try (Workbook workbook = new Workbook()) {
Worksheet sheet = workbook.getWorksheets().get(0);
sheet.getCells().get("A1").putValue("Hello");
sheet.getCells().get("B1").putValue(123);
sheet.getCells().get("C1").putValue(true);
sheet.getCells().get("D1").putValue(12.5d);
sheet.getCells().get("G1").setFormula("=B1*2");
Cell b1 = sheet.getCells().get("B1");
if (b1.getType() == CellValueType.NUMBER) {
System.out.println("Number: " + b1.getStringValue());
}
workbook.save("inspect.xlsx");
}
Kaavojen tallennus
Kaavamerkkijonot tallennetaan cell.setFormula(). Tallennettu kaavamerkkijono alkaa
= ja noudattaa standardia Excel-kaavasyntaksia. getType()-menetelmä palauttaa
CellValueType.FORMULA kaavasoluissa. Aspose.Cells FOSS for Java tallentaa ja
siirtää kaavat XLSX-muodossa; kaava lasketaan uudelleen Excelissä avattaessa.
import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.CellValueType;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
try (Workbook workbook = new Workbook()) {
Worksheet sheet = workbook.getWorksheets().get(0);
Cell b1 = sheet.getCells().get("B1");
b1.putValue(100.0);
Cell c1 = sheet.getCells().get("C1");
c1.setFormula("=B1*1.2");
assert c1.getType() == CellValueType.FORMULA;
workbook.save("formulas.xlsx");
}
XLSX Kierrosmatkan tarkkuus
Kaikki kirjoitetut arvot säilyvät XLSX-sarjoituksen ja uudelleenlatauksen aikana. Lataaminen
olemassa oleva .xlsx-tiedosto käyttää new Workbook(path) tai new Workbook(path, options) yhdessä
LoadOptions:n kanssa korjaustilan mahdollistamiseksi. Uudelleenlatauksen jälkeen getType() ja getStringValue()
palauttavat samat arvot kuin kirjoitushetkellä.
import com.aspose.cells_foss.LoadIssue;
import com.aspose.cells_foss.LoadOptions;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
LoadOptions options = new LoadOptions();
options.setStrictMode(false);
options.setTryRepairPackage(true);
options.setTryRepairXml(true);
try (Workbook workbook = new Workbook("input.xlsx", options)) {
if (workbook.getLoadDiagnostics().hasRepairs()) {
for (LoadIssue issue : workbook.getLoadDiagnostics().getIssues()) {
System.out.println(issue.getMessage());
}
}
Worksheet sheet = workbook.getWorksheets().get(0);
System.out.println(sheet.getCells().get("A1").getStringValue());
workbook.save("output.xlsx");
}
Tuetut tiedostomuodot
| Muoto | Tiedostopääte | Luku | Kirjoitus |
|---|---|---|---|
| Excel Open XML | .xlsx | ✓ | ✓ |
Avoin lähdekoodi ja lisensointi
Aspose.Cells FOSS for Java on julkaistu MIT‑lisenssin alla. Voit vapaasti käyttää, muokata ja jakaa sitä henkilökohtaisissa, avoimen lähdekoodin ja kaupallisissa projekteissa ilman rajoituksia. Lähdekoodi on saatavilla osoitteessa github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Java.