一、获取CSV文件数据

import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.testng.SkipException;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test; import java.io.*;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; public class DataProviderTest { public Iterator<Object[]> readDataFromCSV(String path){
// 读取CSV文件方法
List<Object[]> list = new ArrayList<Object[]>();
try {
FileReader is = new FileReader(new File(path));
BufferedReader br = new BufferedReader(is);
while(br.ready()){
list.add(br.readLine().split(","));
}
return list.iterator();
} catch (Exception e) {
throw new SkipException(e.getMessage());
}
} @DataProvider
public Iterator<Object[]> getData1() throws UnsupportedEncodingException {
// 获取CSV方法
String path = this.getClass().getResource("test.xlsx").getPath();
String path1 = java.net.URLDecoder.decode(path, "utf-8");
System.out.println(path1);
return readDataFromCSV(path1); } @Test(dataProvider = "getData1")
public void test1(String text1,String text2) {
// 打印CSV数据
System.out.println(text1);
System.out.println(text2); }
}

二、获取Excel文件数据

import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.testng.SkipException;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test; import java.io.*;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; /**
* @author zc
* @date 2021-01-21 17:18
*/ public class DataProviderTest { public Object[][] getDataFromExcel(String excelPath){
// 读取excel文件方法
Workbook book;
try {
FileInputStream f = new FileInputStream(excelPath);
book = new XSSFWorkbook(f);
Sheet sheet = book.getSheetAt(0);
int rowInExcel = sheet.getPhysicalNumberOfRows();
int columnInExcel = sheet.getRow(0).getPhysicalNumberOfCells();
String[][] obj = new String[rowInExcel-2][columnInExcel];
for (int row = 2; row < rowInExcel; row++) {
for (int col = 0; col < columnInExcel; col++) {
sheet.getRow(row).getCell(col).setCellType(Cell.CELL_TYPE_STRING);
obj[row-2][col] = sheet.getRow(row).getCell(col).getStringCellValue();
System.out.println(obj[row-2][col]);
}
}
return obj;
} catch (Exception e) {
// TODO Auto-generated catch block
throw new SkipException(e.getMessage());
}
} @DataProvider
public Object[][] getData2() throws UnsupportedEncodingException {
// 获取excle方法
String path = this.getClass().getResource("test.xlsx").getPath();
String path1 = java.net.URLDecoder.decode(path, "utf-8");
System.out.println(path1);
return getDataFromExcel(path1);
} @Test(dataProvider = "getData2")
public void test1(String text1,String text2) {
// 打印CSV数据
System.out.println(text1);
System.out.println(text2); }
}

【Java】之获取CSV文件数据以及获取Excel文件数据的更多相关文章

  1. PHP实时生成并下载超大数据量的EXCEL文件

    最近接到一个需求,通过选择的时间段导出对应的用户访问日志到excel中, 由于用户量较大,经常会有导出50万加数据的情况.而常用的PHPexcel包需要把所有数据拿到后才能生成excel, 在面对生成 ...

  2. 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】) 转

    效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中[附源代码下载])    本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较   ...

  3. 数据导出至Excel文件--好库编程网http://code1.okbase.net/codefile/SerializeHelper.cs_2012122018724_118.htm

    using System; using System.IO; using System.Data; using System.Collections; using System.Data.OleDb; ...

  4. 用node.js写一个简单爬虫,并将数据导出为 excel 文件

    引子 最近折腾node,最开始像无头苍蝇一样到处找资料,然而多数没什么卵用,都在瞎比比.在一阵瞎搞后,我来分享一下初步学习node的三个过程: 1 撸一遍NODE入门,对其有个基本的了解: 2 撸一遍 ...

  5. Python中,添加写入数据到已经存在的Excel的xls文件,即打开excel文件,写入新数据

    背景 Python中,想要打开已经存在的excel的xls文件,然后在最后新的一行的数据. 折腾过程 1.找到了参考资料: writing to existing workbook using xlw ...

  6. Qt中将QTableView中的数据导出为Excel文件

    如果你在做一个报表类的程序,可能将内容导出为Excel文件是一项必须的功能.之前使用MFC的时候我就写过一个类,用于将grid中的数据导出为Excel文件.在使用了QtSql模块后,我很容易的将这个类 ...

  7. Asp.Net MVC 实现将Easy-UI展示数据下载为Excel 文件

    在一个项目中,需要做一个将Easy-UI界面展示数据下载为Excel文件的功能,经过一段时间努力,完成了一个小Demo.界面如下: 但按下导出Excel后,Excel文件将会下载到本地,在office ...

  8. Pl/sql 如何将oracle的表数据导出成excel文件?

    oracle将表数据导出成excel文件的方法 1)在SQL窗体上,查询需要导出的数据 --查询数据条件-- ; 结果视图 2)在查询结果的空白处,右键选择Copy to Excel 3) 查看导出e ...

  9. C#将数据集DataSet中的数据导出到EXCEL文件的几种方法

    using System; using System.Collections.Generic; using System.Text; using System.Data; using System.W ...

  10. VB将MSHFlexGrid数据导出到Excel文件通用功能

    1.通用导出Excel功能. 2.将 MSHFlexGrid数据导出到Excel文件通用功能. 3.具体代码如下: '将下列代码保存到一模块文件中,调用方法:Export fgrid1,cd1 Pub ...

随机推荐

  1. Uipath学习(一)

    Uipath 常用程序包总结: (1)正则表达式依赖程序包: System.Text.RegularExpressions 用法: 这个语句的作用是判断"溢达集团"这一串字符是否为 ...

  2. 某手创作服务 __NS_sig3 sig3 | js 逆向

    拿获取作品列表为例 https://cp.kuaishou.com/rest/cp/works/v2/video/pc/photo/list?__NS_sig3=xxxxxxxxxxx 搜索__NS_ ...

  3. PHP集群session共享

    集群的概念没有多复杂,其实就是多台电脑为了同一个目标在一起工作.在Web应用中,就是多个服务器提供一个站点的服务. 搭建PHP集群的第一步就是设置负载均衡. 默认情况下PHP是将session存在本地 ...

  4. Vue禁止用户复制文案 + 兼容 IE

    vue必须要加载完才可以操作dom,或者在mounted和created时使用this.$nextTick方法,使dom生成后进行相关操作. created() { this.$nextTick(() ...

  5. 在Django中查找重复项目

    在Django中查找重复项目通常涉及使用查询集(QuerySet)和模型(Model).假设你有一个模型,比如Item,你想查找其中重复的项目,可以通过以下步骤来实现: 确定重复的标准: 首先需要确定 ...

  6. oeasy教您玩转vim - 8 - # 追加文本

    追加文本 回忆上节课内容 我们这次深入了 i 命令 i 在当前的光标之前插入 I 在本行文本的最前面插入 还有一些常用的编辑命令 . 重做 u 撤销 ctrl+r 还原 关于插入,还有什么讲究吗? 类 ...

  7. [oeasy]python0053_ 续行符_line_continuation_python行尾续行

    续行符与三引号 回忆上次内容 上次还是转义序列 类型 英文 符号 \a bell 响铃 \b backspace 退格 \t tab 水平制表符 \v vertical tab 垂直制表符换行不回车 ...

  8. linux date格式化获取时间

    转载请注明出处: 在编写shell脚本时,需要在shell脚本中格式化时间,特此整理下date命令相关参数的应用 root@controller1:~# date --help 用法:date [选项 ...

  9. 工作单元(UnitOfWork) 模式 (2) .NET Core

    1.工作单元(UnitOfWork)是什么? Maintains a list of objects affected by a business transaction and coordinate ...

  10. C# 开发技巧 轻松监控方法执行耗时

    前言 MethodTimer.Fody 是一个功能强大的库,可以用于测量 .NET 应用程序中的方法的执行时间.允许你在不修改代码的情况下,自动地测量和记录方法的执行时间. 这个工具是基于.NET的 ...