import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
public class ExcelUtil {
private FileOutputStream fos = null;
private FileInputStream fis = null;
private Workbook workbook = null;
private Sheet sheet = null;
private int rowIndex = 0;
private String[] header ={"Id","Name","Age","Date","Tel","Address"};
public ExcelUtil(){
}
public void InitExcel(String fileName){
try{
workbook = new HSSFWorkbook();
fos = new FileOutputStream(fileName);
sheet = workbook.createSheet("result");
Row headerRow = sheet.createRow(rowIndex);
rowIndex++;
for (short i=0; i<header.length; i++)
{
Cell cell = headerRow.createCell(i);
cell.setCellValue(header[i]);
}
} catch (Exception e){
e.printStackTrace();
}
}
public void WriteRows(HashMap hash){
try{
Row row = sheet.createRow(rowIndex);
rowIndex++;
Cell cell = null;
int index= 0;
cell = row.createCell(index++);
cell.setCellValue(hash.get("ID")+"");
cell = row.createCell(index++);
cell.setCellValue(hash.get("Name")+"");
cell = row.createCell(index++);
cell.setCellValue(hash.get("Age")+"");
cell = row.createCell(index++);
cell.setCellValue(hash.get("Date")+"");
cell.setCellType(Cell.CELL_TYPE_NUMERIC);
if (hash.get("Date")!=null)
cell.setCellValue(hash.get("Date")+"");
else
cell.setCellType(Cell.CELL_TYPE_BLANK);
cell = row.createCell(index++);
cell.setCellValue(hash.get("Tel")+"");
cell = row.createCell(index++);
cell.setCellValue(hash.get("Address")+"");
}catch(Exception e){
e.printStackTrace();
}
}
public void reader(String fileName){
try{
fis= new FileInputStream(fileName);
Workbook wb = WorkbookFactory.create(fis);
Sheet sheet = wb.getSheetAt(0);
int lastRowNum = sheet.getLastRowNum();
for (int i=1; i<lastRowNum; i++)
{
Row row = sheet.getRow(i);
int lastColNum = row.getLastCellNum();
Cell cell = row.getCell(0);
if (cell!=null )
{
if (cell.getCellType()== Cell.CELL_TYPE_STRING)
System.out.println(cell.getStringCellValue());
}
cell = row.getCell(1);
if (cell!=null)
{
if (cell.getCellType()==Cell.CELL_TYPE_NUMERIC)
System.out.println(cell.getDateCellValue());
}
cell = row.getCell(2);
if (cell!=null)
{
if (cell.getCellType()== Cell.CELL_TYPE_NUMERIC)
System.out.println(cell.getNumericCellValue());
}
}
}catch(Exception ee){
ee.printStackTrace();
}finally{
try{
fis.close();
}catch(Exception ee){
ee.printStackTrace();
}
fis=null;
}
}
public void finish() {
try{
workbook.write(fos);
}catch(Exception e){
e.printStackTrace();
}finally{
if (fos!=null){
try{
fos.close();
}catch(Exception ee){
ee.printStackTrace();
}
}
fos = null;
}
}
}
分享到:
相关推荐
maven项目,可直接运行,CSV的读写.
emv software for computers
emv reader writer scanner
* io流 运用 * 注意:只要子类 包含以下类名字的,就是该流的继承 * InputStream----- ... * Reader-------- 输入字符流 * OutputStream-----输出字节流 * Writer --------输出字符流
Java IO流里面 Reader Writer 方法
一个比较好用的Bitmap Image Reader Writer Library 。该库只有一个hpp文件,跟CImg有几分相似(但功能没有CImg丰富,可满足日常开发的基本需求足够)。该库不仅可以很方面的进行bmp文件的读写操作,而且还可以进行...
基于PHP的excel reader php版 Excel开发包.zip
用java语言实现IPC经典问题中的读者写者问题
java io reader java io reader
当你还是一个java初学者的时候,是不是还在为你没有一个好的源代码模仿去学习而烦恼,这个代码很容易看懂,对你学习很有帮助
OFD Reader & Writer 开源的OFD处理库,支持文档生成、数字签名、文档保护、文档合并、转换、导出等功能
excel-io 具有界面实现的Excel Reader和Writer
Excel Reader是一个读取Excel xsl文件内容的一个PHP类,能够获取.XLS文件中任意单元格的值和格式。
reader and writer---操作系统之课程设计 reader and writer---操作系统之课程设计 reader and writer---操作系统之课程设计
php直接读excel Spreadsheet_Excel_Reader
java读取excel,并且兼容2003和2007. 附带实例 可自定义表头,行读取开始位置、结束位置,列开始位置、结束位置
EMV Reader Writer_EmvREADERwriter_EMV_EMVReader,Writer_EMVReader
用Reader和Writer将一个文件从一个地方复制到另一个地方
EMV Reader Writer_EmvREADERwriter_EMV.zip