POI 之Java 导出数据到Excl表,Excl表导入数据到Java

1、准备Jar包


下载地址:https://archive.apache.org/dist/poi/release/src/

Maven:

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>3.14</version>
</dependency>

Java 导出数据到Excl表:

public static void Write() {
// 设置数据
List<Student> list = new LinkedList<Student>();
for (int i = 1; i <= 10; i++) {
Student student = new Student(i, "同学" + i, "女",
new Random().nextInt(20));
list.add(student);
}
// 得到Excel工作簿对象
HSSFWorkbook workbook = new HSSFWorkbook();
// 创建Excel工作表对象
HSSFSheet sheet = workbook.createSheet("学生信息");
// 创建第一行
HSSFRow row = sheet.createRow(0);
// 设置表格对齐样式
HSSFCellStyle style = workbook.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
// 设置字体
HSSFFont font = workbook.createFont();
font.setFontHeightInPoints((short) 15);
font.setFontName("行书");
// 设置列宽
// sheet.setColumnWidth(0, 4000);
// sheet.setColumnWidth(1, 4000);
// sheet.setColumnWidth(2, 8000);
// sheet.setColumnWidth(3, 8000);
// 生成表头
HSSFCell cell = row.createCell(0);
cell.setCellValue("学号");
cell.setCellStyle(style);
cell = row.createCell(1);
cell.setCellValue("姓名");
cell.setCellStyle(style);
cell = row.createCell(2);
cell.setCellValue("性别");
cell.setCellStyle(style);
cell = row.createCell(3);
cell.setCellValue("年龄");
cell.setCellStyle(style);
// 写入数据
for (int i = 0; i < list.size(); i++) {
row = sheet.createRow(i + 1);
Student s = (Student) list.get(i);
row.createCell(0).setCellValue(s.getId());
row.createCell(1).setCellValue(s.getName());
row.createCell(2).setCellValue(s.getSex());
row.createCell(3).setCellValue(s.getAge());
}
// 将表格写入student.xls
String filePath = "student.xls";
try {
FileOutputStream fout = new FileOutputStream(filePath);
workbook.write(fout);
fout.close();
} catch (Exception e) {
e.printStackTrace();
}

}

Excl表导入数据到Java :

public static void Read() throws Exception {
// 1.得到Excel常用对象
POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(
"student.xls"));
// 2.得到Excel工作簿对象
HSSFWorkbook wb = new HSSFWorkbook(fs);
// 3.得到Excel工作表对象
HSSFSheet sheet = wb.getSheetAt(0);
// 总行数
int trLength = sheet.getLastRowNum();
// 4.得到Excel工作表的行
HSSFRow row = sheet.getRow(0);
// 总列数
int tdLength = row.getLastCellNum();
// 5.得到Excel工作表指定行的单元格
HSSFCell cell = row.getCell(1);
// 6.得到单元格样式
HSSFCellStyle cellStyle = cell.getCellStyle();
for (int i = 0; i < trLength; i++) {
// 得到Excel工作表的行
HSSFRow row1 = sheet.getRow(i);
for (int j = 0; j < tdLength; j++) {
// 得到Excel工作表指定行的单元格
HSSFCell cell1 = row1.getCell(j);
/**
* 为了处理:Excel异常Cannot get a text value from a numeric cell
* 将所有列中的内容都设置成String类型格式
*/

if (cell1 != null) {
cell1.setCellType(Cell.CELL_TYPE_STRING);
}
// 获得每一列中的值
System.out.print(cell1.getStringCellValue() + "\t\t\t");
}
System.out.println();
}
}

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值