package com.syz;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import jxl.Cell;
import jxl.CellType;
import jxl.DateCell;
import jxl.Range;
import jxl.Sheet;
import jxl.Workbook;
import jxl.WorkbookSettings;
import jxl.format.Alignment;
import jxl.format.Border;
import jxl.format.BorderLineStyle;
import jxl.format.CellFormat;
import jxl.format.Colour;
import jxl.format.UnderlineStyle;
import jxl.format.VerticalAlignment;
import jxl.write.Formula;
import jxl.write.Label;
import jxl.write.Number;
import jxl.write.NumberFormat;
import jxl.write.WritableCell;
import jxl.write.WritableCellFeatures;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
public class WriteExcelTest {
static HashMap map = new HashMap();
/*
* 这个更全
*/
public static void main(String[] args) {
try {
// copyDateFormat(new File("c:\\a.xls"), 0, "c:\\copy of a.xls");
writeExcelUseFormat("c:\\format.xls","test");
// buildNewFormTemplete(new File("c:/templete.xls"),new File(
// "c:/buildNewFormTemplete.xls"));
// modifyDirectly1(new File("c:/templete.xls"));
// modifyDirectly2(new File("c:/templete.xls"));
//copyDateAndFormat(new File("c:/a.xls"), 0, "c:/a2.xls");
} catch (Exception e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
public static void modifyDirectly2(File inputFile) throws Exception {
Workbook w1 = Workbook.getWorkbook(inputFile);
WritableWorkbook w2 = Workbook.createWorkbook(inputFile, w1);
WritableSheet sheet = w2.getSheet(0);
WritableCell cell = null;
CellFormat cf = null;
// 加粗
cell = sheet.getWritableCell(0, 0);
WritableFont bold = new WritableFont(WritableFont.ARIAL,
WritableFont.DEFAULT_POINT_SIZE, WritableFont.BOLD);
cf = new WritableCellFormat(bold);
cell.setCellFormat(cf);
// 设置下划线
cell = sheet.getWritableCell(0, 1);
WritableFont underline = new WritableFont(WritableFont.ARIAL,
WritableFont.DEFAULT_POINT_SIZE, WritableFont.NO_BOLD, false,
UnderlineStyle.SINGLE);
cf = new WritableCellFormat(underline);
cell.setCellFormat(cf);
// 直截添加可以覆盖掉
setCellValueDirectly(sheet, sheet.getCell(0, 2), new Double(4),
CellType.NUMBER);
w2.write();
w2.close();
}
public static void modifyDirectly1(File file) {
try {
// Excel获得文件
Workbook wb = Workbook.getWorkbook(file);
// 打开一个文件的副本,并且指定数据写回到原文件
WritableWorkbook book = Workbook.createWorkbook(file, wb);
WritableSheet sheet0 = book.getSheet(0);
sheet0.addCell(new Label(0, 1, "陈小稳"));
// 添加一个工作表
WritableSheet sheet = book.createSheet(" 第二页 ", 1);
sheet.addCell(new Label(0, 0, " 第二页的测试数据 "));
book.write();
book.close();
} catch (Exception e) {
System.out.println(e);
}
}
public static void buildNewFormTemplete(File inputFile, File outputFile) {
try {
// Excel获得文件
Workbook wb = Workbook.getWorkbook(inputFile);
// 打开一个文件的副本,并且指定数据写回到原文件
WritableWorkbook book = Workbook.createWorkbook(outputFile, wb);
WritableSheet sheet0 = book.getSheet(0);
sheet0.addCell(new Label(0, 1, "陈小稳"));
// 添加一个工作表
WritableSheet sheet = book.createSheet(" 第二页 ", 1);
sheet.addCell(new Label(0, 0, " 第二页的测试数据 "));
book.write();
book.close();
} catch (Exception e) {
System.out.println(e);
}
}
public static void copyDateAndFormat(File inputFile,
int inputFileSheetIndex, String outputFilePath) throws Exception {
Workbook book = null;
Cell cell = null;
// 1.避免乱码的设置
WorkbookSettings setting = new WorkbookSettings();
java.util.Locale locale = new java.util.Locale("zh", "CN");
setting.setLocale(locale);
setting.setEncoding("ISO-8859-1");
book = Workbook.getWorkbook(inputFile, setting);
Sheet readonlySheet = book.getSheet(inputFileSheetIndex);
OutputStream os = new FileOutputStream(outputFilePath);// 输出的Excel文件URL
WritableWorkbook wwb = Workbook.createWorkbook(os);// 创建可写工作薄
WritableSheet writableSheet = wwb.createSheet(readonlySheet.getName(),
0);// 创建可写工作表
// 2.誊写不同数据格式的数据
for (int rowIndex = 0; rowIndex < readonlySheet.getRows(); rowIndex++) {
for (int colIndex = 0; colIndex < readonlySheet.getColumns(); colIndex++) {
cell = readonlySheet.getCell(colIndex, rowIndex);
// A2B2为合并的单元格,A2有内容,B2为空
// if(colIndex == 0 && rowIndex == 1){
// System.out.println(colIndex + "," + rowIndex + " type:" +
// cell.getType() +" :" + cell.getContents());
// }
// 【有各种设置格式】
if (cell.getType() == CellType.DATE
|| cell.getType() == CellType.DATE_FORMULA) {
writableSheet.addCell(new jxl.write.DateTime(colIndex,
rowIndex, ((DateCell) cell).getDate(),
new jxl.write.WritableCellFormat(cell
.getCellFormat())));
} else if (cell.getType() == CellType.NUMBER
|| cell.getType() == CellType.NUMBER_FORMULA) {
writableSheet.addCell(new jxl.write.Number(colIndex,
rowIndex, ((jxl.NumberCell) cell).getValue(),
new jxl.write.WritableCellFormat(cell
.getCellFormat())));
} else if (cell.getType() == CellType.EMPTY) {
// 空的以及合并单元格中第一列外的
// System.out.println("EMPTY:"+cell.getContents());
// System.err.println("空单元格 at " + colIndex + "," + rowIndex
// +" content:" + cell.getContents());
} else if (cell.getType() == CellType.LABEL
|| cell.getType() == CellType.STRING_FORMULA) {
writableSheet.addCell(new Label(colIndex, rowIndex, cell
.getContents(), new jxl.write.WritableCellFormat(
cell.getCellFormat())));
} else {
System.err.println("其它单元格类型:" + cell.getType() + " at "
+ colIndex + "," + rowIndex + " content:"
+ cell.getContents());
}
// if(cell.getType() == CellType.STRING_FORMULA){
// System.err.println(colIndex + "," + rowIndex +":" +
// cell.getContents() +" type
没有合适的资源?快使用搜索试试~ 我知道了~
Android写入xls文件
共49个文件
xml:12个
class:12个
java:7个
4星 · 超过85%的资源 需积分: 33 10 下载量 119 浏览量
2015-08-05
13:38:14
上传
评论
收藏 1.73MB ZIP 举报
温馨提示
Android写入xls文件
资源推荐
资源详情
资源评论
收起资源包目录
AndroidExcel.zip (49个子文件)
AndroidExcel
.project 848B
project.properties 360B
proguard.cfg 1KB
src
com
syz
AndroidExcelActivity.java 776B
FileUtils.java 2KB
WriteExcelTest.java 18KB
jxlCreate.java 4KB
AndroidManifest.xml 830B
.idea
libraries
jxl.xml 205B
misc.xml 480B
compiler.xml 734B
workspace.xml 37KB
.name 12B
encodings.xml 171B
modules.xml 275B
scopes
scope_settings.xml 143B
copyright
profiles_settings.xml 76B
vcs.xml 173B
res
drawable-ldpi
ic_launcher.png 2KB
drawable-hdpi
ic_launcher.png 4KB
drawable-mdpi
ic_launcher.png 3KB
layout
main.xml 572B
values
strings.xml 190B
assets
AndroidExcel.iml 1KB
gen
com
syz
Manifest.java 177B
BuildConfig.java 249B
R.java 732B
libs
jxl.jar 664KB
.classpath 437B
bin
resources.ap_ 10KB
classes
AndroidExcel.unaligned.apk 281KB
com
syz
R$layout.class 361B
BuildConfig.class 323B
R$drawable.class 374B
R$attr.class 307B
jxlCreate.class 3KB
AndroidExcelActivity.class 1KB
R$id.class 352B
AndroidExcelActivity$1.class 878B
R.class 458B
R$string.class 394B
WriteExcelTest.class 12KB
FileUtils.class 3KB
AndroidExcel.apk 281KB
res
drawable-ldpi
ic_launcher.png 2KB
drawable-hdpi
ic_launcher.png 4KB
drawable-mdpi
ic_launcher.png 2KB
AndroidExcel.apk 287KB
classes.dex 614KB
共 49 条
- 1
资源评论
- 醒太迟2017-08-16写工具的很好参考资料,值得收藏!
花花帝
- 粉丝: 3
- 资源: 15
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功