使用java创建excel工作表时遇到的问题
我正在尝试打开一个现有的excel文档,并尝试创建一个工作表并将数据插入单元格。当我在eclipse中编译代码时,我没有收到任何错误,但当我运行代码时,它不会影响excel文档 这是我的密码使用java创建excel工作表时遇到的问题,java,excel,apache-poi,Java,Excel,Apache Poi,我正在尝试打开一个现有的excel文档,并尝试创建一个工作表并将数据插入单元格。当我在eclipse中编译代码时,我没有收到任何错误,但当我运行代码时,它不会影响excel文档 这是我的密码 import java.io.*; import java.io.FileInputStream; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.usermodel.HSSFCell; import
import java.io.*;
import java.io.FileInputStream;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.ss.usermodel.*;
import java.io.File;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.JFrame;
import javax.swing.JButton;
public class test{
test()
{
JFrame f = new JFrame("Pay Slip Generator");
f.setVisible(true);
f.setSize(500, 300);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLayout( new FlowLayout() );
JButton choose_file = new JButton("choose file");
f.add(choose_file);
choose_file.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
JFileChooser fileopen = new JFileChooser();
FileFilter filter = new FileNameExtensionFilter("c files", "c");
fileopen.addChoosableFileFilter(filter);
int ret = fileopen.showDialog(null, "Open file");
if (ret == JFileChooser.APPROVE_OPTION) {
File file = fileopen.getSelectedFile();
String path = file.getAbsolutePath();
System.out.println(path);
try
{
FileInputStream fis = new FileInputStream(path);
HSSFWorkbook wb = new HSSFWorkbook(fis);
int no_sheets = wb.getNumberOfSheets();
System.out.println(no_sheets);
HSSFSheet sheet = wb.createSheet("test");
HSSFRow row = sheet.createRow(10);
HSSFCell cell = row.createCell(10);
cell.setCellValue("Hello");
fis.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
});
}
public static void main(String args[])throws IOException
{
new test();
}
期待回复,提前感谢。这不会影响,因为您没有将数据写回Excel。 在以下行之后插入:
cell.setCellValue(“Hello”)代码>
确保在执行代码时excel文件未打开。这解决了我的问题,实际上我忘记编写文件输出流,开始担心结果。非常感谢@mk08
FileOutputStream out = new FileOutputStream(new File(path));
wb.write(out);
wb.close();
out.close();