یکی از بهترین کتابخانه برای این کار در جاوا، Apache POI است. این کتابخانه برای خواندن ، نوشتن و ایجاد فایل های Microsoft Office است (Excel, Power point, Visio, MS Word و ...).
خواندن اطلاعات از یک فایل xlsx:
FileInputStream cityFileInputStream = new FileInputStream("city.xlsx");
XSSFWorkbook cityWorkbook = new XSSFWorkbook(cityFileInputStream);
XSSFSheet cityWorksheet = cityWorkbook.getSheetAt(0);
for (int i = 1; i < cityWorksheet.getLastRowNum() + 1; i++) {
XSSFRow rowCity = cityWorksheet.getRow(i);
XSSFCell cellCityCode = rowCity.getCell(3);
XSSFCell cellCityName = rowCity.getCell(4);
String cityName = cellCityName.getStringCellValue();
System.out.println("cityName: " + cityName);
}
نوشتن اطلاعات در یک فایل xlsx:
FileInputStream cityFileInputStream = new FileInputStream("city.xlsx");
XSSFWorkbook cityWorkbook = new XSSFWorkbook(cityFileInputStream);
XSSFSheet cityWorksheet = cityWorkbook.getSheetAt(0);
XSSFRow rowCity = cityWorksheet.getRow(0);
XSSFCell cellCityCentralId = rowCity.getCell(2);
XSSFCell cellCityCode = rowCity.getCell(3);
int centralId = 1;
String centralCode = "123";
cellCityCentralId.setCellValue(centralId);
cellCityCode.setCellValue(centralCode);
FileOutputStream out = new FileOutputStream(new File("city_edit.xlsx"));
cityWorkbook.write(out);
out.close();
نکته: برای فایل های با فرمت XLS نیز می توانید از کلاس های HSSF در همین کتابخانه استفاده کنید.