正在查看: Harvest v2.32 应用的 ReadWrite.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Harvest v2.32 应用的 ReadWrite.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package jxl.demo;
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Calendar;
import jxl.Cell;
import jxl.CellType;
import jxl.Workbook;
import jxl.common.Logger;
import jxl.format.Colour;
import jxl.format.UnderlineStyle;
import jxl.read.biff.BiffException;
import jxl.write.Blank;
import jxl.write.DateFormat;
import jxl.write.DateFormats;
import jxl.write.DateTime;
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.WritableHyperlink;
import jxl.write.WritableImage;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
public class ReadWrite {
private static Logger logger = Logger.getLogger(ReadWrite.class);
private File inputWorkbook;
private File outputWorkbook;
public ReadWrite(String str, String str2) {
this.inputWorkbook = new File(str);
this.outputWorkbook = new File(str2);
logger.setSuppressWarnings(Boolean.getBoolean("jxl.nowarnings"));
logger.info("Input file: " + str);
logger.info("Output file: " + str2);
}
public void readWrite() throws IOException, BiffException, WriteException {
logger.info("Reading...");
Workbook workbook = Workbook.getWorkbook(this.inputWorkbook);
logger.info("Copying...");
WritableWorkbook createWorkbook = Workbook.createWorkbook(this.outputWorkbook, workbook);
if (this.inputWorkbook.getName().equals("jxlrwtest.xls")) {
modify(createWorkbook);
}
createWorkbook.write();
createWorkbook.close();
logger.info("Done");
}
private void modify(WritableWorkbook writableWorkbook) throws WriteException {
logger.info("Modifying...");
WritableSheet sheet = writableWorkbook.getSheet("modified");
sheet.getWritableCell(1, 3).setCellFormat(new WritableCellFormat(new WritableFont(WritableFont.ARIAL, 10, WritableFont.BOLD)));
sheet.getWritableCell(1, 4).setCellFormat(new WritableCellFormat(new WritableFont(WritableFont.ARIAL, 10, WritableFont.NO_BOLD, false, UnderlineStyle.SINGLE)));
sheet.getWritableCell(1, 5).setCellFormat(new WritableCellFormat(new WritableFont(WritableFont.ARIAL, 10)));
WritableCell writableCell = sheet.getWritableCell(1, 6);
if (writableCell.getType() == CellType.LABEL) {
Label label = (Label) writableCell;
label.setString(label.getString() + " - mod");
}
sheet.getWritableCell(1, 9).setCellFormat(new WritableCellFormat(new NumberFormat("#.0000000")));
sheet.getWritableCell(1, 10).setCellFormat(new WritableCellFormat(new NumberFormat("0.####E0")));
sheet.getWritableCell(1, 11).setCellFormat(WritableWorkbook.NORMAL_STYLE);
WritableCell writableCell2 = sheet.getWritableCell(1, 12);
if (writableCell2.getType() == CellType.NUMBER) {
((Number) writableCell2).setValue(42.0d);
}
WritableCell writableCell3 = sheet.getWritableCell(1, 13);
if (writableCell3.getType() == CellType.NUMBER) {
Number number = (Number) writableCell3;
number.setValue(number.getValue() + 0.1d);
}
sheet.getWritableCell(1, 16).setCellFormat(new WritableCellFormat(new DateFormat("dd MMM yyyy HH:mm:ss")));
WritableCell writableCell4 = sheet.getWritableCell(1, 17);
WritableCellFormat writableCellFormat = new WritableCellFormat(DateFormats.FORMAT9);
writableCell4.setCellFormat(writableCellFormat);
WritableCell writableCell5 = sheet.getWritableCell(1, 18);
if (writableCell5.getType() == CellType.DATE) {
Calendar calendar = Calendar.getInstance();
calendar.set(1998, 1, 18, 11, 23, 28);
((DateTime) writableCell5).setDate(calendar.getTime());
}
WritableCell writableCell6 = sheet.getWritableCell(1, 22);
if (writableCell6.getType() == CellType.NUMBER) {
((Number) writableCell6).setValue(6.8d);
}
WritableCell writableCell7 = sheet.getWritableCell(1, 29);
if (writableCell7.getType() == CellType.LABEL) {
((Label) writableCell7).setString("Modified string contents");
}
sheet.insertRow(34);
sheet.removeRow(38);
sheet.insertColumn(9);
sheet.removeColumn(11);
sheet.removeRow(43);
sheet.insertRow(43);
for (WritableHyperlink writableHyperlink : sheet.getWritableHyperlinks()) {
if (writableHyperlink.getColumn() == 1 && writableHyperlink.getRow() == 39) {
try {
writableHyperlink.setURL(new URL("http://www.andykhan.com/jexcelapi/index.html"));
} catch (MalformedURLException e) {
logger.warn(e.toString());
}
} else if (writableHyperlink.getColumn() == 1 && writableHyperlink.getRow() == 40) {
writableHyperlink.setFile(new File("../jexcelapi/docs/overview-summary.html"));
} else if (writableHyperlink.getColumn() == 1 && writableHyperlink.getRow() == 41) {
writableHyperlink.setFile(new File("d:/home/jexcelapi/docs/jxl/package-summary.html"));
} else if (writableHyperlink.getColumn() == 1 && writableHyperlink.getRow() == 44) {
sheet.removeHyperlink(writableHyperlink);
}
}
WritableCell writableCell8 = sheet.getWritableCell(5, 30);
WritableCellFormat writableCellFormat2 = new WritableCellFormat(writableCell8.getCellFormat());
writableCellFormat2.setBackground(Colour.RED);
writableCell8.setCellFormat(writableCellFormat2);
sheet.addCell(new Label(0, 49, "Modified merged cells"));
((Number) sheet.getWritableCell(0, 70)).setValue(9.0d);
((Number) sheet.getWritableCell(0, 71)).setValue(10.0d);
((Number) sheet.getWritableCell(0, 73)).setValue(4.0d);
sheet.addCell(new Formula(1, 80, "ROUND(COS(original!B10),2)"));
sheet.addCell(new Formula(1, 83, "value1+value2"));
sheet.addCell(new Formula(1, 84, "AVERAGE(value1,value1*4,value2)"));
sheet.addCell(new Label(0, 88, "Some copied cells", writableCellFormat));
sheet.addCell(new Label(0, 89, "Number from B9"));
sheet.addCell(sheet.getWritableCell(1, 9).copyTo(1, 89));
sheet.addCell(new Label(0, 90, "Label from B4 (modified format)"));
sheet.addCell(sheet.getWritableCell(1, 3).copyTo(1, 90));
sheet.addCell(new Label(0, 91, "Date from B17"));
sheet.addCell(sheet.getWritableCell(1, 16).copyTo(1, 91));
sheet.addCell(new Label(0, 92, "Boolean from E16"));
sheet.addCell(sheet.getWritableCell(4, 15).copyTo(1, 92));
sheet.addCell(new Label(0, 93, "URL from B40"));
sheet.addCell(sheet.getWritableCell(1, 39).copyTo(1, 93));
int i = 0;
while (i < 6) {
int i2 = i + 1;
double d = i2;
double d2 = i;
Double.isNaN(d2);
Double.isNaN(d);
sheet.addCell(new Number(1, i + 94, d + (d2 / 8.0d)));
i = i2;
}
sheet.addCell(new Label(0, 100, "Formula from B27"));
sheet.addCell(sheet.getWritableCell(1, 26).copyTo(1, 100));
sheet.addCell(new Label(0, 101, "A brand new formula"));
sheet.addCell(new Formula(1, 101, "SUM(B94:B96)"));
sheet.addCell(new Label(0, 102, "A copy of it"));
sheet.addCell(sheet.getWritableCell(1, 101).copyTo(1, 102));
sheet.removeImage(sheet.getImage(1));
sheet.addImage(new WritableImage(1.0d, 116.0d, 2.0d, 9.0d, new File("resources/littlemoretonhall.png")));
sheet.addCell(new Label(0, 151, "Added drop down validation"));
WritableCell blank = new Blank(1, 151);
WritableCellFeatures writableCellFeatures = new WritableCellFeatures();
ArrayList arrayList = new ArrayList();
arrayList.add("The Fellowship of the Ring");
arrayList.add("The Two Towers");
arrayList.add("The Return of the King");
writableCellFeatures.setDataValidationList(arrayList);
blank.setCellFeatures(writableCellFeatures);
sheet.addCell(blank);
sheet.addCell(new Label(0, 152, "Added number validation 2.718 < x < 3.142"));
Blank blank2 = new Blank(1, 152);
WritableCellFeatures writableCellFeatures2 = new WritableCellFeatures();
writableCellFeatures2.setNumberValidation(2.718d, 3.142d, WritableCellFeatures.BETWEEN);
blank2.setCellFeatures(writableCellFeatures2);
sheet.addCell(blank2);
((Label) sheet.getWritableCell(0, 156)).setString("Label text modified");
sheet.getWritableCell(0, 157).getWritableCellFeatures().setComment("modified comment text");
sheet.getWritableCell(0, 158).getWritableCellFeatures().removeComment();
WritableCell writableCell9 = sheet.getWritableCell(0, 172);
WritableCellFeatures writableCellFeatures3 = writableCell9.getWritableCellFeatures();
Cell bottomRight = writableCellFeatures3.getSharedDataValidationRange().getBottomRight();
sheet.removeSharedDataValidation(writableCell9);
ArrayList arrayList2 = new ArrayList();
arrayList2.add("Stanley Featherstonehaugh Ukridge");
arrayList2.add("Major Plank");
arrayList2.add("Earl of Ickenham");
arrayList2.add("Sir Gregory Parsloe-Parsloe");
arrayList2.add("Honoria Glossop");
arrayList2.add("Stiffy Byng");
arrayList2.add("Bingo Little");
writableCellFeatures3.setDataValidationList(arrayList2);
writableCell9.setCellFeatures(writableCellFeatures3);
sheet.applySharedDataValidation(writableCell9, bottomRight.getColumn() - writableCell9.getColumn(), 1);
}
}