Tag: jexcelapi

无法为JExcel / jxl获取正确的编码

在使用JExcel时,我遇到了字符编码的问题。 我的应用程序从模板中创build一个excel文档,并在将数据发送给用户之前用数据库中的数据填充(填充当前和以前的会话用户input)。 在最终文档中,非模板字符FROM ,如é , è , à或°不能正确渲染(在生成的文档中,它们在模板中正确显示),而是由 代替,而来自数据库正确编码。 我使用UTF-8进行用户input(输出到查看图层)以及数据库存储。 我在生成该文件的类中使用此代码: private void createFile(Arguments…) throws IOException, BiffException, RowsExceededException, WriteException { File XLSFile = new File(MyPath); WorkbookSettings XLSSettings = new WorkbookSettings() XLSSettings.setEncoding(Constants.TEMPLATE_ENCODING) // Constants.java is a class containing only app-wide constants declared as public static final Workbook template = Workbook.getWorkbook( new File(Constants.TEMPLATE_PATH)); WritableWorkbook userDocument = Workbook.createWorkBook(XLSFile,template,XLSSettings); […]

在Excel文件中追加数据

我试图编写一个程序,将数据添加到Java文件的Excel文件。 我起床到下面的代码。 但它会重写Excel文件中的内容,而不是追加到它。 请帮我完成这个。 public class jExcel { static WritableWorkbook workbook; public static void main(String args[])throws Exception { workbook = Workbook.createWorkbook((new File("D:\\0077\\my2.xls"))); WritableSheet sheet = workbook.createSheet("First Sheett",1); Label label = new Label(5,2,"ssssssssss"); sheet.addCell(label); workbook.write(); workbook.close(); } }

我必须使用jexcel在java中使用列值对xls表格行进行sorting

我在java中使用jexcel api。 我需要读取xls paticular列值,并且必须根据xls对整个行进行sorting。 然后我必须以新的xls以sorting的方式保存这些行。 我能够使用TreeMap来做到这一点,但它创造了memmoryOutOfBoundexception的可能性。 所以我需要一个有效的方法。 任何分类代码将是非常有帮助的。 请使用jexcel的Treemap查找我的代码实现 def sort() { def wbSetting = nullenter code here def writableWorkBook = null`enter code here` def writableSheet = null`enter code here` Workbook workbook = Workbook.getWorkbook(new File(grailsApplication.config.app.xls.path)); Sheet sheet = workbook.getSheet(0); Cell[] flagCell = sheet.getColumn(1) TreeMap map = new TreeMap (Collections.reverseOrder()); flagCell.each { flag -> Cell firstName […]

Jexcel公式计算错误

我已经创build了一个工作表, out.xls其单元格D6 = D5 * 2和D5设置为1.我的问题是,当我插入一个值到D5 JXL,D6从来没有计算。 D6只是保持它在Excel中插入1到D5时最初计算的值。 注意:我有一个更大的编程问题,我试图解决,这只是一个非常缩小的版本,以减less错误。 这是我第一次使用Jexcel,去年我只学了java,所以任何帮助,将不胜感激。 我昨天花了6个小时试图在网上find答案,但无济于事。 输出附在代码下面 代码:(留下主要和import) WorkbookSettings custom= new WorkbookSettings(); custom.setRationalization(true); custom.setRefreshAll(true); custom.setUseTemporaryFileDuringWrite(true); Workbook workbook = Workbook.getWorkbook(new File("out.xls"),custom); WritableWorkbook copy = Workbook.createWorkbook(new File("output.xls"), workbook); WritableSheet sheet2 = copy.getSheet(0); SheetSettings customsheetsettings=new SheetSettings(sheet2); customsheetsettings.setAutomaticFormulaCalculation(true); Number number = new Number(3, 4, 3); sheet2.addCell(number); copy.write(); copy.close(); workbook.close(); Workbook workbook2 = Workbook.getWorkbook(new File("output.xls")); […]

select一个Excel的Java API

我所需要做的就是打开一个MS excel工作表 – 不知道哪一种(2003,2007等),并将每一行中的信息parsing为一个对象。 我只执行只读操作。 Apache POI , JExcelAPI或者OpenXLS是否适合这项工作? 我宁愿不了解更多的API,但如果你确定这些都不是最好的,那么我会采取你的input。

在jExcel API中创build多个工作表

如果一张纸张已满(65536 rows)我需要使用jExcel API在Java中创build多个Excel表格。 假设如果一张纸已满,然后在下一张纸上,它应该开始自动从第一张纸从停止的地方写入。 我只是坚持把逻辑放在一张纸满了的时候dynamic创build。 以下是我迄今为止所做的代码。 public void write() throws IOException, WriteException { File file = new File(inputFile); WorkbookSettings wbSettings = new WorkbookSettings(); wbSettings.setLocale(new Locale("en", "EN")); WritableWorkbook workbook = Workbook.createWorkbook(file, wbSettings); writingToExcel(workbook); } //Logic to create sheet dyanmically if one is full should be done here I guess? private void writingToExcel(WritableWorkbook workbook) { workbook.createSheet("Report", 0); […]

JExcelAPI – 将date写入Excel工作表忽略日,月和年

我尝试使用JExcelAPI(v.2.6.3)在Java应用程序中生成一些Excel工作表,并且无法正确生成date单元格。 例如,对于代码: WritableWorkbook workbook = null; workbook = Workbook.createWorkbook(new File("C:\\tmp\\tests.xls")); try { Date date = new Date(); final WritableSheet sheet = workbook.createSheet("Sheet", 0); DateTime dateTime = new DateTime(0, 0, date); sheet.addCell(dateTime); System.out.println("Date1 is " + date); final Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, 2007); cal.set(Calendar.MONTH, Calendar.OCTOBER); cal.set(Calendar.DAY_OF_MONTH, 17); cal.set(Calendar.HOUR_OF_DAY, 8); cal.set(Calendar.MINUTE, 15); date = cal.getTime(); dateTime […]

什么是从Java编写Excel文件的最佳方式?

你们会推荐从Java编写一个excel文件的库吗? 它必须是纯粹的Java解决scheme,所以它可以在任何平台上工作。 谢谢,Grae 编辑:它不能是CSV文件格式。 它必须有列标题,数据格式types等

jExcelApi – 单元格date格式重用不起作用

我创build了一个jExcelApi类的包装器来轻松地将对象列表导出到Excel。 为了最小化对象创build,单元格格式创build为静态字段,并在连续调用中重复使用以导出。 但我有date格式的问题 – 第一个调用工作正常,但在所有连续导出date单元格具有数字格式,而不是date格式。 如果我为date格式创build一个新的对象,而不是使用静态字段,一切都很好。 对于不同的工作表或工作簿使用相同的格式对象是否有任何原因? 这里是代码,exception处理简化,其他数据types省略,可能一些import缺less: ExcelCellGenerator.java: import jxl.write.WritableCell; public interface ExcelCellGenerator<T> { WritableCell getCell(int col, int row, T arg); } ExcelCellGeneratorFactory.java: import jxl.write.DateFormat; import jxl.write.DateTime; import jxl.write.Label; import jxl.write.NumberFormat; import jxl.write.NumberFormats; import jxl.write.WritableCell; import jxl.write.WritableCellFormat; import ExcelExporter.DateTimeExtractor; final class ExcelCellGeneratorFactory { private ExcelCellGeneratorFactory() {} private static final WritableCellFormat DATE_FORMAT = new WritableCellFormat […]

将JTable写入Excel

我打算将一个JTable的内容移动到一个Microsoft Excel工作表中。 Excel表格应该有一些格式规范。 例如,如果某列的值为“A”,则它应该是绿色的。 如果它是'B'红色的。 我正处于分析阶段。 我应该使用哪个jar子? 数据不是很大。性能不是一个大问题。