1. Produkter
  2.   Kalkylblad
  3.   Java
  4.   Apache POI HSSF

Apache POI HSSF

 
 

Java Library för Microsoft Excel-binära filer

Open Source Java API gör det möjligt att läsa, skriva och konvertera Excel XLS-kalkylblad.

Apache POI HSSF är en ren Java-implementering av filformatet Excel '97(-2007) (BIFF8). Det kostnadsfria API:et med öppen källkod tillhandahåller funktioner för att skapa, läsa, ändra och skriva Excel XLS-kalkylblad. Utvecklare som är intresserade av att bara läsa kalkylbladsdata kan använda händelsemodellens API för att uppfylla sina behov. För att modifiera kalkylbladsdata kan användarmodellens API användas. Det är viktigt att veta att användarmodellsystemet har ett högre minnesfotavtryck än användarmodellen för lågnivåhändelser, men har den stora fördelen att det är mycket enklare att arbeta med.

Apache POI HSSF ger bra stöd för ytterligare Excel-funktioner som att arbeta med ark och formler, skapa cellstilar genom att fylla i färger och ramar, typsnitt, sidhuvuden och sidfötter, former, datavalideringar, bilder, hyperlänkar och många fler.

Previous Next

Komma igång med Apache POI HSSF

Först och främst måste du ha Java Development Kit (JDK) installerat på ditt system. Om du redan har det, fortsätt till Apache POI:s nedladdningssida för att få den senaste stabila utgåvan i ett arkiv. Extrahera innehållet i ZIP-filen i valfri katalog där de nödvändiga biblioteken kan länkas till ditt Java-program. Det är allt!

Att referera till Apache POI i ditt Maven-baserade Java-projekt är ännu enklare. Allt du behöver är att lägga till följande beroende i din pom.xml och låta din IDE hämta och referera till Apache POI Jar-filer.

Apache POI Maven beroende

<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
  <groupId>org.apache.poi</groupId>
  <artifactId>poi-scratchpad</artifactId>
  <version>4.0.0</version>
</dependency>

Skapa Excel-arbetsbok och lägg till ark via Java API:er

Apache POI HSSF bibliotek med öppen källkod gör det möjligt för programvaruutvecklare att skapa en ny Microsoft Excel-arbetsbok i XLS-filformat. Utvecklare kan enkelt lägga till nya kalkylblad till samlingen från en befintlig instans av arbetsbok. 

Skapa en ny XLS-fil

// create a new workbook
Workbook workbook = new HSSFWorkbook();
OutputStream outputStream = new FileOutputStream("CreateXls.xls");
// create a new sheet
Sheet sheet = workbook.createSheet("Apache POI XSSF");
// create a new row
Row row = sheet.createRow(1);
// create a new cell
Cell cell = row.createCell(1);
// set cell value
cell.setCellValue("File Format Developer Guide");
// save file
workbook.write(outputStream);

Java API för att läsa och skriva till befintlig Excel-fil 

Apache POI HSSF gör det möjligt för mjukvaruutvecklare att komma åt och läsa data från den befintliga Microsoft Excel-arbetsboken. Att läsa i en fil är väldigt enkelt, skapa först en arbetsboksinstans från ett Excel-kalkylblad och gå till önskat ark. Öka sedan radnumret och iterera över alla celler i en rad. Upprepa dessa steg tills all data har lästs. Apache POI HSSF tillhandahåller också funktioner för att modifiera en befintlig Excel-fil.

Läs cellinnehåll via Java

// open xls file
InputStream inputStream = new FileInputStream("document.xls");
Workbook workbook = WorkbookFactory.create(inputStream);
// get sheet
Sheet sheet = workbook.getSheetAt(0);
// get row
Row row = sheet.getRow(1);
// get cell
Cell cell = row.getCell(1);
// display data
System.out.println(cell);

Rita former och lägg till bilder i Excel-kalkylblad

Apache POI-HSSF tillhandahåller funktioner för att rita former i Excel-kalkylblad. Det stöder ritningsformer med hjälp av ritverktyg i Microsoft Office. Rita olika former som oval, linje, rektangel och ställ in andra formstilar. I Apache POI är bilder en del av ritningen och stöder PNG, JPG och DIB typer av bilder för tillfället.

Rita rektangel i XLS via Java

// create a new workbook
Workbook workbook = new HSSFWorkbook();
OutputStream outputStream = new FileOutputStream("DrawShape.xls");
// create a new sheet
Sheet sheet = workbook.createSheet("Apache POI XSSF");
// create a new row
Row row = sheet.createRow(1);
// create a new cell
Cell cell = row.createCell(1);
// create rectangle shape
HSSFPatriarch patriarch = (HSSFPatriarch) sheet.createDrawingPatriarch();
HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 1023, 254, (short) 1, 0, (short) 1, 0);
HSSFSimpleShape shape = patriarch.createSimpleShape(a);
shape.setShapeType(HSSFSimpleShape.OBJECT_TYPE_RECTANGLE);
// save file
workbook.write(outputStream);

Teckensnittshantering och sammanfogning av celler i XLS-kalkylark

Apache POI-HSSF tillhandahåller metoder som gör det möjligt för Java-programmerare att hantera teckensnitt i Excel-kalkylblad. Vi kan skapa typsnittet, ställa in färgen, ställa in storleken etc. Teckensnittet är ett gränssnitt som ger metoder för att hantera typsnittet. Apache POI-HSSF tillåter också utvecklare att slå samman celler till en enda cell. För att göra det tillhandahåller den metoder som tar cellindex som ett argument och slår samman cellerna till en enda stor cell.

Ställ in teckensnitt för XLS-kalkylark via Java

// create a new XLS file
OutputStream outfile = new FileOutputStream("SetFont.xls");
Workbook wb = new HSSFWorkbook();
// create a new sheet
Sheet sheet = wb.createSheet("Apache POI XSSF");
// create a new row
Row row = sheet.createRow(1);
// create a new cell
Cell cell = row.createCell(1);
// set style
CellStyle style = wb.createCellStyle();
// set text
cell.setCellValue("File Format Developer Guide");
// set font settings
Font font = wb.createFont();
font.setFontHeightInPoints((short) 14);
font.setFontName("Arial");
font.setItalic(true);
font.setBold(true);
// apply font
style.setFont(font);
cell.setCellStyle(style);
// save
wb.write(outfile);
 Svenska