Tag: apache poi

下载某些Excel文件并解释其一些值

所以我正在努力获得一个特定的excel文件,主要是一个文件,显示了学生在作业上的作业和成绩,并对这些值做了些什么。 现在,我想要分配作业的姓名,学生姓名,学生的成绩,以及这些作业的截止date。 excel文件有点奇怪。 作业垂直列出,一些作业占用2列。 我用Java创build了一个程序,试图把这个赋值的名字和值放到一个滚动条中,但是这些赋值的列表却大相径庭。 "Learning Experi ST-2A: Life in " 这将在Excel中垂直列出,但是当我用java读取它时,它显示如下: Learning Experi ST-2A: Life in 我希望输出显示在一行上面。 任何想法如何解决这个问题? 谢谢。 编辑 现在,当我的程序读取excel文件时,有一些空单元正在读取。 这是输出: Learning ExperiST-2A: Life in Learning ExperiST-2A: Life in [Empty Line] [Empty Line] Other information 我怎样才能摆脱我的程序正在阅读空单元格产生的空行?

在Java中parsingExcel数据

我应该实现一个Java应用程序,该应用程序应该从Excel电子表格中检索数据,并将其链接到我已创build的某些对象,以便对其应用一些计算,然后显示结果。 关于应用程序 ==> excel电子表格是衡量银行客户对银行服务满意度的一项调查。 ==>应用程序应该parsing电子表格中的数据,并对其进行一些计算。 ==>结果应该使用交互式GUI显示。 到目前为止我所做的 我已经分析了问题,并创build了我的应用程序中需要的所有对象。 我实际上做了一些在这里searchstackoverflow.com,并认为Apache POI将是非常有用的。 我需要帮助的地方 问题是我不知道应该从什么开始。 任何关于如何完成这个任务的build议,我应该使用什么工具,语言,API或devise模式都是值得欢迎的。

使用apachePOI将Longtypes的值插入到Excel中

我有一个使用Java程序创build的Excel表。 我需要将一个Longtypes的值(如361272004652 )插入到Excel工作表中。 它正确插入。 但问题是,当我打开Excel表格Long值以指数forms显示(如3.61272E+11 )。 我需要这样的价值。 不是以指数forms。 我的代码是这样的: else if (cellVal instanceof Long) { cell.setCellValue((Long)cellVal); … } 其中cellVal是对象types

删除包含stringExcel Apache POI API的行

我的问题是,我想删除所有包含stringJUNI的行。 我成功做到这一点,只有一行包含这个string我的代码,我一直在使用的是: private void processExcelFile(File f_path) throws Exception{ File path=f_path; try{ FileInputStream is=new FileInputStream(path); HSSFWorkbook wb = new HSSFWorkbook(is); HSSFSheet sheet = wb.getSheetAt(0); int rowcount_post=0; int rowcount_304=0; for(Row row: sheet){ for(Cell cell : row){ if (cell.getCellType() == Cell.CELL_TYPE_STRING){ if (cell.getRichStringCellValue().getString().trim().equals("JUNI")){ rowcount_post=row.getRowNum(); HSSFRow removingRow = sheet.getRow(rowcount_post); if (removingRow != null) { sheet.removeRow(removingRow); } try (FileOutputStream fileOut […]

删除包含特定string的多个行

我一直在试图开发一个可以删除包含特定string“POST”的多行的代码。 我一直在这样做: private void processExcelFile(File f_path){ File path=f_path; HSSFWorkbook wb = null; try{ FileInputStream is=new FileInputStream(path); wb= new HSSFWorkbook(is); HSSFSheet sheet = wb.getSheetAt(0); int j = 0; for(Row row: sheet){ for(Cell cell : row){ count++; if (cell.getCellType() == Cell.CELL_TYPE_STRING){ if (cell.getRichStringCellValue().getString().trim().contains("POST")){ rowcount_post=row.getRowNum(); System.out.print("ROW COUNT= "+rowcount_post); HSSFRow removingRow = sheet.getRow(rowcount_post); if (removingRow != null) { sheet.removeRow(removingRow); […]

Java – Apache POI – 在这种模式下填充循环和单元格是不可能的? (EXCEL)

最近我打开了这个话题: Java – Apache POI – 用循环填充行和单元格错误(Excel) 我制定了另外一个结构,希望能够解决问题,问题变得更加清晰。 考虑到这种模式: hashkey1 | hashkey2 | hashkey3 | hashkey4 value1-1 | value2-1 | value3-1 | value4-1 value1-2 | value2-2 | value3-2 | value4-2 value1-3 | value2-3 | value3-3 | value4-3 value1-4 | value2-4 | value3-4 | value4-4 value1-5 | value2-5 | value3-5 | value4-5 这是新的代码: Row keyRow = […]

Excel中的公式不考虑单元格中dynamic生成的值

我在一些单元格中有一个公式,它是基于其他单元格(比如A1,B1)中的值,而这些单元又是从数据库中填充的。我的公式正在变得正确,但它始终考虑A1,B1中的空值。 .ie,打开我的excel,公式的单元格中的值总是为零..除非我在生成的excel中更改它。 我想要它考虑单元格值得到dynamic填充,然后显示结果。请帮助!!!!!

如何从Excel中的单元格使用java获取超链接地址?

我知道如何使用JavaExcelApi(jxl)或Apache POI通过编写一些java代码来读取excel文件中单元格的string信息。 但是现在我遇到了一个问题: 一个单元格包含一个超链接的string。 我可以读取这个单元格中的string,但是我不知道如何通过java读取超链接地址。

Apache POI:row.getLastCellNum和row.getNoOfPhysicalCell之间的区别

POI HSSFRow中的row.getLastCellNum()和row.getNoOfPhysicalCell()有什么区别? 或者他们是一样的?

在程序执行POI,JAVA时,从Excel电子表格中读取插入的数据

我正在创build一个将excel文件读入程序并对其进行操作的应用程序。 在此之前,一切正常。 但是当我盯着为我的应用程序实现GUI时,它不再工作。 这里是代码: 当程序启动时,它会创build一个带有button的GUI,并打开2个新的电子表格。 我在这些电子表格中input数据,然后按下调用crossReferenceButtonListener的button,但是无法获取数据。 下面的错误信息 public GUI () throws Exception{ this.setTitle("NYWM Cross Reference Application"); this.setSize(400,100); this.setVisible(true); this.setLocationRelativeTo(null); buttonHolder = new Panel (new BorderLayout()); this.add(buttonHolder); crossReference = new Button ("CrossReference"); generateHPD = new Button ("Generate HPD"); buttonHolder.add(crossReference, BorderLayout.NORTH); buttonHolder.add(generateHPD, BorderLayout.SOUTH); crossReference.addActionListener(new crossReferenceButtonListener()); generateHPD.addActionListener(new generateHPDButtonListener()); createExcelSheet (log,"C:/Log.xlsx", "Log"); createExcelSheet(sheet,"C:/Spreadsheet.xlsx", "Spreadsheet"); } private void createExcelSheet (XSSFWorkbook […]