Tag: java

java POI Excel工作表:在保持比例的同时重新绘制图片

你好,我创build一个使用POI的Excel shhet,并在一个点上添加一个JPG文件的图像: Workbook wb = new HSSFWorkbook(); CreationHelper helper = wb.getCreationHelper(); //… InputStream is = new FileInputStream("img.jpg"); byte[] bytes = IOUtils.toByteArray(is); int picIdx = wb.addPicture(bytes, Workbook.PICTURE_TYPE_JPEG); Drawing drawing = sheet.createDrawingPatriarch(); ClientAnchor anchor = helper.createClientAnchor(); anchor.setCol1(5); anchor.setRow1(5); Picture pict = drawing.createPicture(anchor, picIdx); pict.resize(); 现在我想要把这张照片放进那个单元格,但是我不想改变它的宽高比。 我可以调整的尺度是相对于细胞,显然可以有不同的比例。 我试图计算比例尺,但问题是,我无法得到或设置像素中的行高度,只有在PT,我无法计算单元格比例或者BC我无法获得宽度和高度在同样的单位…任何build议?

如何在读取excel文件时识别单元格为空白或空或空

我读了一个excel文件来传递一些数据字段的input。 但是当我运行程序时,一些单元格值返回为空,有些是空白的。实际上,当我打开Excel文件时,单元格中没有可用的值。 我怎样才能手动确定一个Excel单元格为空或空白。 对于一些场景,我需要将空白值传递给字段。 如果单元格为空,则无法将值传递给字段。 引导我伸出手。 码: public static void readAllData() throws IOException{ Object result = null; String sheetName = "Testsheet"; String filePathxlsx = "C:/Users/MSTEMP/Documents/Files/Testxssf.xlsx"; try { FileInputStream in = new FileInputStream(filePathxlsx); File file = new File(filePathxlsx); if(file.isFile() && file.exists()){ XSSFWorkbook xworkbook = new XSSFWorkbook(in); XSSFSheet xsheet=xworkbook.getSheet(sheetName); int totalRows = xsheet.getLastRowNum(); for(int row =1; row<totalRows;row++){ […]

如何使在Excel中的Excel表

我想使Java应用程序 从保存在文件夹中的文件列表中读取。 将每个文件的名称发送到命令行。 从cmd输出并保存在数组列表中 使哈希映射保存在其中的所有数组列表,例如哈希映射(键,值) 写excel表单来为文件夹中的每个文件写入所有权限 问题是只有一个logging出现在Excel表和哈希映射只保存最后一个文件为什么?任何一个帮助我继续这个代码? 写在excel表中的所有logging我有12个文件 我的代码: public class CreateExcellSheet { public String line; public Map < String, Object[] > appinfo = new TreeMap < String, Object[] >(); public int counter=0; public ArrayList<String> permissions=new ArrayList<String>(); public Set<String> permissionsSet=new HashSet<String>(); public ArrayList<String> AppPermissions=new ArrayList<String>(); public String AppName; public HashMap<Integer,ArrayList<String>> singleAppPermissions=new HashMap<Integer,ArrayList<String>>(); public int key=0; […]

评估公式并从单元格中删除公式

我想评估公式,并从保持其值的单元格中删除公式。 这怎么可以使用Apache POI完成? 以下是我评估所有公式的代码。 FormulaEvaluator evaluator = template.getCreationHelper().createFormulaEvaluator(); int sheetCount = template.getNumberOfSheets(); for(int sheetIndex = 0; sheetIndex < sheetCount; sheetIndex ++) { sheet = dfaTemplate.getSheetAt(sheetIndex); for (Row r : sheet) { for (Cell c : r) { if (c.getCellType() == Cell.CELL_TYPE_FORMULA) { evaluator.evaluateFormulaCell(c); } } } }

每次只读一行/只有特定的列和创build对象

我使用Apache poi导入我在桌面区域中的.xlsx文件。 通过下面的代码,我可以阅读我想要的孔表。 但是我想每次只读一行,每行只读特定的列(例如,我只想从第一行开始将列A,F和G保存为对象,然后对于第二行,第三行等) 我该怎么做? public class main { public static void main( String[] args ) throws Exception { InputStream ExcelFileToRead = new FileInputStream("C:/User/Desktop/test.xlsx"); XSSFWorkbook wb = new XSSFWorkbook(ExcelFileToRead); XSSFSheet sheet=wb.getSheetAt(0); XSSFRow row; XSSFCell cell; Iterator rows = sheet.rowIterator(); while (rows.hasNext()) { row=(XSSFRow) rows.next(); Iterator cells = row.cellIterator(); while (cells.hasNext()) { cell=(XSSFCell) cells.next(); if (cell.getCellType() […]

如何获取特定列中使用的行数

我使用getLastRowNum()和getPhysicalNumberOfCells()分别使用的行数和列数,但它没有给出正确的行索引。 int lastRowNum = sheetAt.getLastRowNum(); int lastColNum = sheetAt.getRow(0).getPhysicalNumberOfCells(); 任何其他选项找出相同的?

用JXLS限制内存中的行数

我想用库来读取xls文件, JXLS看起来非常有用,因为映射可以在XML文件中configuration。 在这种情况下,我有一个非常大的文件的性能问题,是否有可能限制在内存中的行数,使文件一次读取N行? 谢谢。

Excel格式的Java

我正在使用Apache POI JAR在Java中编写excel。 对于下面的代码(从其他网站引用),它使用poi-contrib.jar中的HSSFCellUtil.java类。 这个jar并不是最新版本的poi-3.14.jar。 我在HSSFCellUtil.DATA_FORMAT得到编译时错误。 任何人都可以build议我Excel格式的替代。 HSSFCellUtil.setCellStyleProperty(cell, workbook, HSSFCellUtil.DATA_FORMAT, format.getFormat("($#,##0.00);($#,##0.00)"));

java.lang.NoClassDefFoundError:org / apache / xmlbeans / XmlException添加所有jar文件

我试图访问一个Excel表,但它不断给我这个错误在这一行: XSSFSheet sheet = workbook.getSheetAt(0); 我几乎添加了所有的jar文件,但它仍然无法正常工作。

从maven项目资源文件夹(src / main / resources)加载excel(.xlsx / .xls)文件

在这里,我正试图从一个maven项目的资源文件夹(src / main / resources)加载一个excel文件。 文件夹结构 MyWebApp |______src/main/java | |____Test.java | |______src/main/resources | |______test | |___hello.properties | |___template.xlsx |______target |___MyWebApp |____WEB_INF |___classes |__test |__hello.properties |__template.xlsx 我的方法 //loading excel file String resource = "/test/template.xlsx"; System.out.println(this.getClass().getResource(resource) == null); // prints true //loading properties file String resource = "/test/hello.properties"; System.out.println(this.getClass().getResource(resource) == null); //prints false //I have also tried […]