Java-Excel文件读取
import java.io.File;
import java.io.IOException;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
/**
* 读取execl文件
*/
public class File_excel { // 测试案例绑定DataProvider后自动循环执行
@Test(dataProvider = "getData")
public void testSearch(String p1, String p2) {
System.out.println(p1 + " " + p2);
} public static Object[][] readData(String dataFile, String sheetName, int beginRowNum, int rowOffset,
int beginColumnNum, int columnOffset) {
return read(dataFile, sheetName, beginRowNum, rowOffset, beginColumnNum, columnOffset);
} // 定义数据驱动
@DataProvider(name = "getData")
public static Object[][] getData() throws IOException {
return readData("H:\\test.xls", "sheet1", 0, 0, 0, 0);
} /**
* @param dataFile
* 文件名
* @param sheetName
* excel中的sheet
* @param beginRowNum
* 开始行
* @param rowOffset
* 行偏移量
* @param beginColumnNum
* 开始列
* @param columnOffset
* 列偏移量
* @return
*/
private static Object[][] read(String dataFile, String sheetName, int beginRowNum, int rowOffset,
int beginColumnNum, int columnOffset) {
File excelFile = new File(dataFile);
Workbook wb = null;
Object[][] data = null;
try {
wb = Workbook.getWorkbook(excelFile);
Sheet sheet = wb.getSheet(sheetName);
if (sheet == null)
return null;
int rows = sheet.getRows();
int cols = sheet.getColumns();
if (rowOffset == 0) {
rowOffset = rows - beginRowNum;
} else if (rows < (beginRowNum + rowOffset)) {
rowOffset = rows - beginRowNum;
}
if (columnOffset == 0) {
columnOffset = cols - beginColumnNum;
} else if (cols < (beginColumnNum + columnOffset)) {
columnOffset = cols - beginColumnNum;
}
data = new Object[rowOffset][columnOffset];
for (int i = beginRowNum; i < beginRowNum + rowOffset; i++) {
for (int j = beginColumnNum; j < beginColumnNum + columnOffset; j++) {
// 获取单元格数据 getCell(col,row);
Cell cell = sheet.getCell(j, i);
if (cell != null) {
String celldata = cell.getContents().trim();
data[i - beginRowNum][j - beginColumnNum] = celldata;
}
}
}
} catch (Exception e) {
throw new RuntimeException(e);
}
return data;
}
}
test.xls文件内容:

Java-Excel文件读取的更多相关文章
- 接口自动化测试:参数化封装(excel文件读取)
log4j.properties文件配置 log4j.rootLogger = DEBUG,stdout,F log4j.appender.stdout = org.apache.log4j.Cons ...
- 项目总结06:Java Excel文件导入功能HSSFWorkbook(xls)和 XSSFWorkbook (xlsx)
项目中碰到Excel文件打入数据功能Mark一下 package com.blue.pem.client.util; import java.io.File; import java.io.FileI ...
- C#操作Excel文件(读取Excel,写入Excel)
看到论坛里面不断有人提问关于读取excel和导入excel的相关问题.闲暇时间将我所知道的对excel的操作加以总结,如今共享大家,希望给大家可以给大家带了一定的帮助.另外我们还要注意一些简单的问题1 ...
- C#实现从EXCEL文件读取数据到SqlServer数据库
用第三方组件:NPOI组件实现 先去官网:http://npoi.codeplex.com/下载需要引入dll(可以选择.net2.0或者.net4.0的dll),然后在网站中添加引用.使用 NPOI ...
- 如何让excel文件读取变得更简单
今天给大家安利一款excel文件导入神器,easyexcel,官方地址:(https://github.com/alibaba/easyexcel). 在官网文档中有介绍了其性能. 从上面的性能测试可 ...
- 关于Npoi+excel文件读取,修改文件内容的处理方式
因最近有需求场景,实现对文件的读写操作,又不单独生成新的文件,对于源文件的修改,做了一个简单实现,如下↓ // 要操作的excel文件路径 string fileName = Server.MapPa ...
- Vue项目中导入excel文件读取成js数组
1. 安装组件 cnpm install xlsx --save 2. 代码 <template> <span> <input class="input-fil ...
- java属性文件读取,属性修改
/** * 属性文件读取 * @author bestmata * */ public class CommUtil { private static Logger logger=Logger.get ...
- C# WPF 进度条,根据读取数据显示进度条进度,根据Excel文件读取数据,进度条样式
后台代码: //导入 private void Border_MouseLeftButtonUp_2(object sender, MouseButtonEventArgs e) { var path ...
- C# .Net :Excel NPOI导入导出操作教程之将Excel文件读取并写到数据库表,示例分享
using (FileStream fileReader = File.OpenRead(@"C:\Users\Administrator\Desktop\112.xls")) ...
随机推荐
- cocostudio ui编辑器 使用心得
1 c++包含路径 2九宫格设置 cocostudio ui编辑器设置九宫格x,y,w,h是从图片左上角开始测量,然后调整尺寸就行了. 2. 如果点了自适应 panel会在加载json的时候被设置 ...
- filter敏感词替换
1.properties文件的应用 在<filter>写入配置 <filter> <filter-name>myFilter</filter-name> ...
- 1.Django入门小Demo
1.Django安装 (1)前提:已安装python环境 (2)打开命令行输入:pip install Django==2.1.3 (3)打开Pycharm,在File--Setting--Proje ...
- Python中文报错问题
异常信息:SyntaxError: Non-ASCII character '\xe6' in file D:/pythonlearning/HelloPython.py on line 8, but ...
- 本地oracle的配置连接
oraclediver_name=oracle.jdbc.driver.OracleDriverurl=jdbc:oracle:thin:@205.168.1.125:1521:orclusernam ...
- CFile用法(转)
一.各种关于文件的操作在程序设计中是十分常见,如果能对其各种操作都了如指掌,就可以根据实际情况找到最佳的解决方案,从而在较短的时间内编写出高效的代码,因而熟练的掌握文件操作是十分重要的.本文将对Vis ...
- STL 练习
makefile ------------------------------------- %.o : %.cpp g++ -g -c $< -o $@ all: t t2 rmXX % : ...
- Django 组件-cookie与session
Cookie概述 什么叫Cookie Cookie翻译成中文是小甜点,小饼干的意思.在HTTP中它表示服务器送给客户端浏览器的小甜点.其实Cookie是key-value结构,类似于一个python中 ...
- Java并发-Runnable、Callable、Future、Future Task
Runnable: Runnable的代码非常简单,他是一个接口,且接口中只有一个方法,run(),创建一个类实现他,把一些费时操作写在其中,然后使用某个线程去执行该Runnable实现类即可实现多线 ...
- java代码FileInputStream的复制粘贴练习
所有的输入输出流都是对于程序来说的,这个图是实现文件内容的复制粘贴功能的e 首先把文件读到哦程序里,然后把程序读出到文件l package com.a.b; //这个复制和粘贴-----------首 ...