前提
比较简单的导入导出,java项目即可完成
准备(1个jar包+1个实体类+1个测试类)
1个jar包(百度即可):
jxl.jar
1个实体类(如:Book.java):
public class Book {
private int id;
private String name;
private String author;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public Book(int id, String name, String author) {
super();
this.id = id;
this.name = name;
this.author = author;
}
public Book() {
super();
}
public String toString() {
return "Book [id=" + id + ", name=" + name + ", author=" + author + "]";
}
}
1个测试类(分别为导入导出演示一个测试类):
导出测试类(Main1.java):
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
public class Main {
// 导出excel表格方法
public static void excelout(List<Book> list) {
try {
// 创建excel对象
WritableWorkbook book = Workbook.createWorkbook(new File(
"d:/demo.xls"));
// 通过excel对象创建一个选项卡对象
WritableSheet sheet = book.createSheet("sheet", 0);
for (int i = 0; i < list.size(); i++) {
// 创建一个单元格对象 列 行 值,excel里面只支持String
Label la1 = new Label(0, i, String.valueOf(list.get(i).getId()));
Label la2 = new Label(1, i, list.get(i).getName());
Label la3 = new Label(2, i, list.get(i).getAuthor());
// 加进选项卡
sheet.addCell(la1);
sheet.addCell(la2);
sheet.addCell(la3);
}
//输出流输入到excel
book.write();
//一定要关闭,否则输出空白
book.close();
} catch (Exception e) {
System.out.println("请在导出过程不要打开之前的xls");
}
}
public static void main(String[] args) {
List<Book> list = new ArrayList<Book>();
list.add(new Book(1, "111", "1111"));
list.add(new Book(2, "222", "2222"));
list.add(new Book(3, "333", "3333"));
Main.excelout(list);
}
}
导入测试类(Main2.java):
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
public class Main1 {
public static List<Book> excelin() {
List<Book> list = new ArrayList<Book>();
try {
//获取excel对象
Workbook book = Workbook.getWorkbook(new File("d:/demo.xls"));
//获取选项卡
Sheet sheet = book.getSheet(0);
for (int i = 0; i < sheet.getRows(); i++) {
//遍历内容 列 行
Cell cell = sheet.getCell(0, i);
list.add(new Book(Integer.valueOf(cell.getContents()), sheet
.getCell(1, i).getContents(), sheet.getCell(2, i)
.getContents()));
}
//必须要关闭流
book.close();
} catch (Exception e) {
System.out.println("请选择正确的文件再导入!");
}
return list;
}
public static void main(String[] args) {
List<Book> list=Main1.excelin();
for(Book b:list){
System.out.println(b);
}
}
}