如何使用 Java 将数据写入 excel 表
问题描述
如何使用 Java 将数据写入 excel 表。
解决方案
以下是使用 Java 将数据写入 excel 表的程序。
import java.io.File;
import java.io.FileOutputStream;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class WriteDataToExcel {
public static void main(String[] args) throws Exception {
//创建空白工作簿
XSSFWorkbook workbook = new XSSFWorkbook();
//创建空白表
XSSFSheet spreadsheet = workbook.createSheet( " Employee Info ");
//创建行对象
XSSFRow row;
//需要写入该数据(Object[])
Map < String, Object[] > empinfo = new TreeMap < String, Object[] >();
empinfo.put( "1", new Object[] {
"EMP ID", "EMP NAME", "DESIGNATION" });
empinfo.put( "2", new Object[] {
"tp01", "Gopal", "Technical Manager" });
empinfo.put( "3", new Object[] {
"tp02", "Manisha", "Proof Reader" });
empinfo.put( "4", new Object[] {
"tp03", "Masthan", "Technical Writer" });
empinfo.put( "5", new Object[] {
"tp04", "Satish", "Technical Writer" });
empinfo.put( "6", new Object[] {
"tp05", "Krishna", "Technical Writer" });
//迭代数据并写入工作表
Set < String > keyid = empinfo.keySet();
int rowid = 0;
for (String key : keyid) {
row = spreadsheet.createRow(rowid++);
Object [] objectArr = empinfo.get(key);
int cellid = 0;
for (Object obj : objectArr){
Cell cell = row.createCell(cellid++);
cell.setCellValue((String)obj);
}
}
//将工作簿写入文件系统
FileOutputStream out = new FileOutputStream(
new File("C:/poiexcel/Writesheet.xlsx"));
workbook.write(out);
out.close();
System.out.println("Writesheet.xlsx written successfully");
}
}
结果
java_apache_poi_excel.html

