作者:乔山办公网日期:
返回目录:excel表格制作
参考代码e5a48de588b6e799bee5baa6e79fa5e98193333:
public class ReadWriteXL
{
public static void main(String[] args) throws InvalidFormatException, IOException{
ArrayList arr=new ArrayList();
File f=new File("F:\\temp\\TEXT\\email.txt");
Scanner in=new Scanner(f);
System.out.println("Read Data From The Txt file ");
while(in.hasNext())
{
arr.add(in.nextLine());
}
System.out.println("Data From ArrayList");
System.out.println(arr);
System.out.println("Write data to an Excel Sheet");
FileOutputStream fos=new FileOutputStream("F:/temp/1.xls");
HSSFWorkbook workBook = new HSSFWorkbook();
HSSFSheet spreadSheet = workBook.createSheet("email");
HSSFRow row;
HSSFCell cell;
for(int i=0;i<arr.size();i++){
row = spreadSheet.createRow((short) i);
cell = row.createCell(i);
System.out.println(arr.get(i));
cell.setCellValue(arr.get(i).toString());
}
System.out.println("Done");
workBook.write(fos);
arr.clear();
System.out.println("ReadIng From Excel Sheet");
FileInputStream fis = null;
fis = new FileInputStream("F:/temp/1.xls");
HSSFWorkbook workbook = new HSSFWorkbook(fis);
HSSFSheet sheet = workbook.getSheetAt(0);
Iterator rows = sheet.rowIterator();
while (rows.hasNext()) {
HSSFRow row1 = (HSSFRow) rows.next();
Iterator cells = row1.cellIterator();
while (cells.hasNext()) {
HSSFCell cell1 = (HSSFCell) cells.next();
arr.add(cell1);
}
}
System.out.println(arr);
}}
大概思路如下:
通过输入输出流读取txt
过滤出来自己zhidao需要的数据存到一个类里面,或者List之类的里面
通过第三方jar包进回行excel的操作将过滤出来的数据循环写入到表格里面
反正很麻烦的写起来。我最近在做excel导入导出功能答的时候,代码写的还是很多的……
好弄、我一般是用POI处理、用POI加载这个文件、然后就能遍历sheet 行 列、然后取值就好、
效果百如图:
注意事项一:需要的度额外的外部包jxl.jar 这个到处都有问下载答..
注意事项二:test.txt文本的内版容如下
姓名 年龄
张三 15
刘二 18
张飞 32
曹操权 56
周瑜 23
具体java代码详见附件下载