Java 处理Excel
来源:互联网 发布:爱知时计 编辑:程序博客网 时间:2024/06/05 15:51
利用 Java Excel API
代码如下:一个Servlet, 一个用于处理Excel 文件
package com.asa.servlet;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import com.asa.util.excel.ExcelUtil;
public class ExcelServlet extends HttpServlet {
// Initialize global variables
public void init() throws ServletException {
}
// Process the HTTP Get request
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
}
// Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ServletOutputStream outStream = response.getOutputStream();
try {
WritableWorkbook wb = ExcelUtil.getWorkBook(outStream);
response.setHeader("content-disposition","attachment;
filename=1.xls");
response.setContentType("application/msexcel");
wb.write();
outStream.flush();
wb.close();
outStream.close();
} catch (WriteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
protected void dispatch(HttpServletRequest request,HttpServletResponse
response,String page)throws javax.servlet.ServletException, java.io.IOException
{
RequestDispatcher dispatcher =getServletContext().getRequestDispatcher(page);
dispatcher.forward(request, response);
}
// Clean up resources
public void destroy()
{
}
}
======================================
/**
*
*/
package com.asa.util.excel;
/**
* @author Administrator
*
*/
import java.io.File;
import java.io.OutputStream;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.Number;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
public class ExcelUtil {
/**
* Just an example
* @param file
* @param sheet which sheet whill be read.
*/
public static void readExcel(File file, int sheetNum)
{
if(file == null || !file.exists())
{
return;
}
Workbook workbook = null;
try
{
workbook = Workbook.getWorkbook(file);
if(workbook.getNumberOfSheets() < sheetNum)
{
return;
}
//get the specified sheet
Sheet sheet = workbook.getSheet(sheetNum);
int rows = sheet.getRows();
int columns = sheet.getColumns();
Cell cell = null;
String cellContent = null;
for(int r = 0; r< rows; r++)
{
for(int c = 0; c< columns; c++)
{
cell = sheet.getCell(c, r);
cellContent = cell.getContents();
if(c+1 == columns)
{
System.out.println(cellContent);
}
else
{
System.out.print(cellContent+" ");
}
}
}
}
catch (Exception e) {
// TODO: handle exception
}
finally
{
workbook.close();
}
}
/**
* 写内容到Excel表中
* @param file
*/
public static void writeExcel1(File file)
{
WritableWorkbook workbook = null;
try {
workbook = Workbook.createWorkbook(file);
//写第一个工作簿
WritableSheet sheet1 = workbook.createSheet("First Sheet", 0);
Label label1 = new Label(0, 2, "A label record");
sheet1.addCell(label1);
Number number1 = new Number(3, 4, 3.1459);
sheet1.addCell(number1);
//写第二个工作簿
WritableSheet sheet2 = workbook.createSheet("Second Sheet", 2);
Label label2 = new Label(0, 2, "Second Sheet");
sheet2.addCell(label2);
Number number2 = new Number(3, 4, 3.1459);
sheet2.addCell(number2);
workbook.write();
workbook.close();
}
catch (Exception e) {
// TODO: handle exception
}
}
/**
* 写内容到Excel表中
* @param file
*/
public static void writeExcel2(File file)
{
WritableWorkbook workbook = null;
try {
workbook = Workbook.createWorkbook(file);
//写第一个工作簿
WritableSheet sheet1 = workbook.createSheet("记录", 0);
Label label1 = new Label(0, 2, "A label record");
sheet1.addCell(label1);
Number number1 = new Number(3, 4, 3.1459);
sheet1.addCell(number1);
//写第二个工作簿
WritableSheet sheet2 = workbook.createSheet("Second Sheet", 2);
Label label2 = new Label(0, 2, "Second Sheet");
sheet2.addCell(label2);
Number number2 = new Number(3, 4, 3.1459);
sheet2.addCell(number2);
workbook.write();
workbook.close();
}
catch (Exception e) {
// TODO: handle exception
}
}
public static WritableWorkbook getWorkBook(OutputStream outputStream) throws Exception
{
WritableWorkbook workbook = null;
try {
workbook = Workbook.createWorkbook(outputStream);
//写第一个工作簿
WritableSheet sheet1 = workbook.createSheet("记录", 0);
Label label1 = new Label(0, 2, "A label record");
sheet1.addCell(label1);
Number number1 = new Number(3, 4, 3.1459);
sheet1.addCell(number1);
//写第二个工作簿
WritableSheet sheet2 = workbook.createSheet("Second Sheet", 2);
Label label2 = new Label(0, 2, "Second Sheet");
sheet2.addCell(label2);
Number number2 = new Number(3, 4, 3.1459);
sheet2.addCell(number2);
}
catch (Exception e) {
// TODO: handle exception
}
return workbook;
}
/**
* @param args
*/
public static void main(String[] args)
{
//ExcelUtil.readExcel(new File("D:/MISC/java misc/excel test.xls"), 0);
ExcelUtil.writeExcel2(new File("D:/信息记录.xls"));
System.out.println("ok");
}
}
- java处理Microsoft Excel
- java处理Microsoft Excel
- Java 处理Excel
- java 处理excel
- Java处理EXCEL
- java处理excel
- java中处理Excel
- java处理Excel
- java jxl处理excel
- java处理excel文件
- java处理Excel
- Java处理Excel文件
- java处理excel(java使用Apache POI处理Excel)
- java处理Excel(POI包)
- java处理 Excel(POI包)
- java处理Excel(POI包)
- Java处理Excel,csv文件
- java处理Excel相关笔记
- sysbench的安装和做性能测试
- 什么是Scrum?
- 欢迎大家加入我的Q群
- 将GridView中的数据导入Excel的代码,和常见问题处理方法
- EMACS getting started
- Java 处理Excel
- 史上最强的10大管理定律
- Function.createDelegate
- 数据绑定控件
- 汇编和调用C函数 其他开发语言 / 汇编语言 - CSDN社区 community.csdn.net
- My first java blog
- List View Macros
- 如何扩展QTP对于不可识别控件的处理能力
- PCB经验总结