0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)
ویرایش شده قبل توسط

چگونه می توان در یک برنامه جاوا اطلاعاتی را از یک فایل Excel با پسوند XLSX خواند و درون آن فایل نوشت؟

1 پاسخ

+1 امتیاز
قبل توسط (1.1هزار امتیاز)
ویرایش شده قبل توسط

یکی از بهترین کتابخانه برای این کار در جاوا، 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 در همین کتابخانه استفاده کنید.

سوالات مشابه

+1 امتیاز
1 پاسخ 2.9هزار بازدید
سوال شده 11 سال قبل در برنامه نویسی توسط سلطانی (1.1هزار امتیاز)
+1 امتیاز
1 پاسخ 474 بازدید
0 امتیاز
1 پاسخ 957 بازدید
0 امتیاز
2 پاسخ 729 بازدید
+1 امتیاز
1 پاسخ 1.3هزار بازدید
0 امتیاز
1 پاسخ 1.5هزار بازدید
0 امتیاز
1 پاسخ 378 بازدید
...