本系统主要是用于Java web 操作Excel文档。
源码与说明如下:
package web;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.Date;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.util.HSSFColor;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class goods
{
public static void main(String agre[])throws Exception
{
/****************************设置字体样式*******************************************************/
/*HSSFWorkbook workBook = new HSSFWorkbook(); //创建一个文档对象
HSSFSheet sheet = workBook.createSheet(); //创建一个工作薄对象
sheet.setColumnWidth(1, 10000); //设置第二列的宽度
HSSFRow row = sheet.createRow(1); //创建一个行对象
row.setHeightInPoints(23); //设置行高23像素
HSSFCellStyle style = workBook.createCellStyle(); //创建样式对象
HSSFFont font = workBook.createFont(); //创建字体对象
font.setFontHeightInPoints((short)15); //设置字体大小
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); //设置字体粗体
font.setFontName("黑体"); //设置为黑体字
style.setFont(font); //将字体加入到样式对象
style.setAlignment(HSSFCellStyle.ALIGN_CENTER_SELECTION); //水平居中
style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); //垂直居中
style.setBorderTop(HSSFCellStyle.BORDER_THICK); //顶部边框粗细
style.setTopBorderColor(HSSFColor.RED.index); //设置为红色
style.setBorderBottom(HSSFCellStyle.BORDER_DOUBLE); //底部边框双线
style.setBorderLeft(HSSFCellStyle.BORDER_MEDIUM); //左边框
style.setBorderRight(HSSFCellStyle.BORDER_MEDIUM); //右边框
style.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy h:mm"));
HSSFCell cell = row.createCell(1);
cell.setCellValue(new Date());
cell.setCellStyle(style); //应用样式
FileOutputStream os = new FileOutputStream("D://first.xls");
workBook.write(os);
os.close();*/
/****************************读取Excel文档内容*******************************************************/
FileInputStream is = new FileInputStream("D://first.xls"); //创建文件流
POIFSFileSystem ts = new POIFSFileSystem(is); //创建POI文件系统兑现
HSSFWorkbook wb = new HSSFWorkbook(ts); //获取文档对象
HSSFSheet sheet = wb.getSheetAt(0); // 获取工作薄
HSSFRow row = null; //声明行对象
for(int i=0;sheet.getRow(i)!=null;i++) //通过循环获取每一行
{
row = sheet.getRow(i);
for(int j = 0;row.getCell(j)!=null;j++) //通过循环获取一行中的每一例
{
System.out.print(row.getCell(j)+" ");
}
System.out.println();
}
System.out.print("success");
}
}