文件在使用Apache POI 3.17在java中写入时损坏
它第一次起作用,手机上出现了文本“ibrahim01”,但当我第二次运行它时,我发现了以下错误:-文件在使用Apache POI 3.17在java中写入时损坏,java,apache-poi,Java,Apache Poi,它第一次起作用,手机上出现了文本“ibrahim01”,但当我第二次运行它时,我发现了以下错误:- public class ClassA1 { private static Workbook wb; private static FileOutputStream fos; private static FileInputStream fis; private static org.apache.poi.ss.usermodel.Sheet sh; private
public class ClassA1 {
private static Workbook wb;
private static FileOutputStream fos;
private static FileInputStream fis;
private static org.apache.poi.ss.usermodel.Sheet sh;
private static Row row;
private static Cell cell;
public static void main(String[] args) throws Exception {
fis = new FileInputStream("./javabook.xlsx");
wb = WorkbookFactory.create(fis);
sh = wb.getSheet("Sheet1");
row =sh.getRow(1);
cell = row.createCell(0);
cell.setCellValue("ibrahim1");
fos = new FileOutputStream("./javabook.xlsx");
wb.write(fos);
fos.close();
System.out.println("Done");
}
}
打开文件时出错的图片(javabook.xlsx)
试试这个
Exception in thread "main" org.apache.poi.EmptyFileException: The supplied file was empty (zero bytes long)
at org.apache.poi.util.IOUtils.peekFirstNBytes(IOUtils.java:74)
at org.apache.poi.util.IOUtils.peekFirst8Bytes(IOUtils.java:57)
at org.apache.poi.poifs.filesystem.FileMagic.valueOf(FileMagic.java:135)
at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:177)
at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:149)
at package1.ClassA1.main(ClassA1.java:25)
你有表格吗?非常感谢……先生/女士帮了很多忙。
import java.io.FileOutputStream;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class ClassA1 {
private static XSSFWorkbook wb;
private static FileOutputStream fos;
private static XSSFSheet sh;
private static Row row;
private static Cell cell;
public static void main(String[] args) throws Exception {
wb = new XSSFWorkbook();
sh = wb.createSheet("Sheet1");
row = sh.createRow(0);
cell = row.createCell(0);
cell.setCellValue("ibrahim1");
fos = new FileOutputStream("./javabook.xlsx");
wb.write(fos);
fos.close();
System.out.println("Done");
}
}