如何使用poi进行excel单元格的查找和替换

作者&投稿:彭疫 (若有异议请与网页底部的电邮联系)
如何用Apache POI读取Excel的单元格自定义名称的值~

可以看看这一页
要一个其中的例子



Java code
// Setup code
String cellName = "TestName";
Workbook wb = getMyWorkbook(); // retrieve workbook

// Retrieve the named range
// Will be something like "$C$10,$D$12:$D$14";
int namedCellIdx = wb.getNameIndex(cellName);
Name aNamedCell = wb.getNameAt(namedCellIdx);

// Retrieve the cell at the named range and test its contents
// Will get back one AreaReference for C10, and
// another for D12 to D14
AreaReference[] arefs = AreaReference.generateContiguous(aNamedCell.getRefersToFormula());
for (int i=0; i<arefs.length; i++) {
// Only get the corners of the Area
// (use arefs[i].getAllReferencedCells() to get all cells)
CellReference[] crefs = arefs[i].getCells();
for (int j=0; j<crefs.length; j++) {
// Check it turns into real stuff
Sheet s = wb.getSheet(crefs[j].getSheetName());
Row r = s.getRow(crefs[j].getRow());
Cell c = r.getCell(crefs[j].getCol());
// Do something with this corner cell
}
}

首先先根据sheet找到行
row = sheet.getRow(rowIndex);
然后找
cell = row.getCell(1);
这样就去到当前的B1了,
cell.getStringCellValue()
就能取到当前的单元格的value

参考spire.xls for java 的查找替换方法:


import com.spire.xls.CellRange;


mport com.spire.xls.ExcelVersion;


import com.spire.xls.Workbook;


import com.spire.xls.Worksheet;


public class ReplaceData {


public static void main(String[] args){

//创建Workbook实例


Workbook workbook = new Workbook();


//加载Excel文档


workbook.loadFromFile("Test.xlsx");



//获取第一个工作表


Worksheet worksheet = workbook.getWorksheets().get(0);

//查找工作表中的指定文字


CellRange[] ranges = worksheet.findAllString("合计", true, true);

for (CellRange range : ranges)


{


//替换为新文字


range.setText("替换");


}


//保存结果文档


workbook.saveToFile("ReplaceData.xlsx", ExcelVersion.Version2013);


}


}

参考自官网教程



在实现java poi对excel表操纵的过程中,想要把数据填入excel表格里面的某个坐标里面的时候。去百度的过程中发现都是先拿到row的坐标,然后拿到那个row中的cell的坐标,都是从0下标开始的,这种操作写一片数据当然舒服,用for循环来实现,但是我只是想往H5那个坐标写东西,这就很蛋疼。百度了很久无果之后,还是自己老实翻了翻java poi的接口,java poi celladdress,总算找到我想要的接口了,这个接口可以直接找到H5这个的坐标的row下标和cell下标,这样就可以直接用程序实现,开个map映射<坐标>:<数据>,来实现自动化单元格数据填写。


用poi怎样把excel文件里面的数据导入数据库三张关联的表中
} catch (Exception e) { \/\/ TODO Auto-generated catch block e.printStackTrace();}finally{ rwb.close();} return list2;} public void tosql(){ List list=addCust(file);\/\/file:所要导入excel的保存目录,如:f:\\\\a.xls Map map=new HashMap();String[] values=new String[ls2....

java poi 在服务器生成excel文件
报格式错误是因为你没有填充EXCEL的内容。正确的做法是:1, HSSFWorkbook ws = new HSSFWorkbook();\/\/建立新HSSFWorkbook对象 2, Sheet sheet = workbook.createSheet(0); \/\/建立一个新的sheet 3,Row row = sheet.createRow(1); \/\/建立一个新的row对象 4, Cell cell = row.createCell(0...

用java 和 poi 怎么创建一个excel,然后写入数据;还有怎么在原有的一个...
你可以看看...对于新使用者很不错, 介绍也很详细 ,希望能够帮到你 参考资料:http:\/\/wenku.baidu.com\/view\/6c5825660b1c59eef8c7b47e.html

java poi实现excel中的数据导入到mysql数据库中,例如excel中有id,name...
package bis.excel;import java.io.File;import java.io.FileInputStream;import java.io.InputStream;import java.util.ArrayList;import java.util.List;import java.util.Map;import java.util.TreeMap;import jxl.Sheet;import jxl.Workbook;public class Excel { @SuppressWarnings("unchecked") ...

Java POI 如何操作word 格式
} catch (IOException e) { e.printStackTrace();} return w;} } 测试 package com.ray.poi.util;import junit.framework.TestCase;public class POIUtilTest extends TestCase { public void testReadDoc() { try{ String text = POIWordUtil.readDoc("E:\/work_space\/poi\/com\/ray\/poi\/util\/...

Java EE中用POI将结果导出为Excel报表文件的实现
\/\/你那有没有设置excel可见啊 我在js中的时候都要设置可见才出来的 下面是js中的设置.不知道对你那个起不起作用 \/\/ 使 Excel 通过 Application 对象可见。wb .Visible = true;

java用poi实现将数据库里面的数据导入已经存在的excel模板中。最好...
java用poi实现将数据库里面的数据导入已经存在的excel模板中。最好有实例参考,谢谢。 数据库里面的每一条数据list.get(i),可能会需要导入excel模板中的一行或者多行。那么循环添加的时候,开始的行号应该怎么确定呢?通过反射得到的对象属性的get()方法,怎么与list,ge... 数据库里面的每一条数据list.get(i),可能...

java用poi导出excel文件,打开导出的文件时报错,怎么办?
1.你的excel模版本身有问题,可以尝试新建一个模版。2.你的excel使用了一些POI不支持的函数。解决办法:另存是由excel重写了完整的文件,可以解决问题。关闭文件例子:FileOutputStream os = new FileOutputStream("workbook.xls");wb.write(os);os.close();在保护状态下execl的格式有可能正在被使用,...

apache poi什么用
在 GrapeCity Documents出现以前,服务端文档组件向来以Apache POI为代表,作为一款由Java编写的开源API库,Apache POI 主要应用于对Microsoft Office文档进行读、写,以及创建和维护。但正如POI所定义的那样:作为“Poor Obfuscation Implementation”首字母的缩写,Apache POI仅提供“简单的模糊实现”,其在创建...

Java POI读取Excel的时候怎么按列读取
按列读取的方法: String pathname = "E:\\\\files\\\\title.xlsx"; File file = new File(pathname); InputStream in = new FileInputStream(file); \/\/得到整个excel对象 XSSFWorkbook excel = new XSSFWorkbook(in); \/\/获取整个excel有多少个sheet ...

余姚市15993641804: 如何用Apache POI操作Excel文件 -
圭查泰利: 首先POI是开源组织Apache出品的一个开源jar包,提供了方便解析Excel的API,我们可以非常方便的使用它来读取Excel.这里介绍3.5Final版本.所需用到的jar包如下:说到Excel,有2003和2007,格式是不一样的,用POI解析的方法也就不...

余姚市15993641804: JAVA利用poi如何向excel已合并的单元格中写入内容 -
圭查泰利: hssfworkbook wb = new hssfworkbook(); hssfsheet sheet = wb.createsheet("new sheet"); hssfrow row = sheet.createrow((short) 1); hssfcell cell = row.createcell((short) 1); hssfrichtextstring content = new hssfrichtextstring("this is a test of message...

余姚市15993641804: 如何用poi导出excel设置列宽 -
圭查泰利: 很多朋友都想知道poi导出excel设置列宽的方法,那么,该怎么做呢,下面让学习啦小编为你带来poi导出excel设置列宽的简单方法. poi导出excel设置列宽步骤:接下来说说sheet.setColumnWidth((short) 0, (short) 250);第一个参数表示...

余姚市15993641804: POI的操作EXCEL的一个简单任务 -
圭查泰利: // 创建工作簿 Workbook workBook = new HSSFWorkbook();// 创建工作表 Sheet sheet = workBook.createSheet("new");// 创建行,Excel中的第一行在poi中索引为0 Row row = sheet.createRow(0);// 创建单元格,Excel中的第一列在poi中...

余姚市15993641804: web工程中用poi导入excel2007表格怎么实现 -
圭查泰利: HSSFWorkbook wb = new HSSFWorkbook();//创建工作表HSSFSheet sheet1 = wb.createSheet("new sheet");HSSFRow row = sheet1.createRow((short)0);HSSFRow row1 = sheet1.createRow((short)1); row.createCell((short)0)....

余姚市15993641804: 如何使用POI对Excel表进行导入和导出 -
圭查泰利: 导入POI的jar包 新建一个项目,在根目录在新建一个lib文件夹,将jar包复制粘贴到lib文件夹后,右键将其添加到项目的build path中,最后的结果如图所示:2 编写java类,新建一个实体类,比如我们要导出数据库的有关电脑的信息,那么就建一...

余姚市15993641804: 如何使用Java POI生成Excel表文件 -
圭查泰利: private static void WriteExcel2010() throws IOException {String path="C:\\poi2.xlsx";XSSFWorkbook workbook=new XSSFWorkbook();XSSFSheet sheet=workbook.createSheet("我的Sheet"); XSSFRow row=sheet.createRow(0);...

余姚市15993641804: 如何利用poi对excel里的某一列的宽度进行设定 -
圭查泰利: EXCEL的行高度和列宽度单位是不一样的.1,EXCEL列高度的单位是磅,Apache POI的行高度单位是缇(twip):1英寸=72磅=25.4毫米=1440缇1磅=0.353毫米=20缇 POI中的行高=Excel的行高度*20 Excel的行高度=POI中的行高/20 这里顺便把...

余姚市15993641804: 用java poi包读取Excel单元格 -
圭查泰利: String excelDir ="c:/tep.xls"; //excel路径 FileInputStream finput = new FileInputStream("excelDir" ); POIFSFileSystem fs = new POIFSFileSystem( finput ); HSSFWorkbook wb = new HSSFWorkbook(fs); HSSFSheet sheet = wb.getSheetAt(0);...

余姚市15993641804: 如何使用POI处理Excel中的日期数据类型 -
圭查泰利: 在POI处理Excel中的日期类型的单元格时,如果仅仅是判断它是否为日期类型的话,最终会以NUMERIC类型来处理.正确的处理方法是先判断单元格的类型是否则NUMERIC类型,然后再判断单元格是否为日期格式,如果是的话,创建一个日期...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网