1.简介

在实际测试中,我们不仅需要读取Excle,而且有时候还需要读取CSV类的文件。如何去读取CSV的文件,宏哥今天就讲解和分享一下,希望对你能够有所帮助。前面介绍了如何读取excel文件,本篇介绍如何读取vsc文件,同样需要用到第三方lib去处理读取csv文件的数据。

2.什么是CSV?

csv是【comma-separated values】的缩写,代表一种包含数据列表的纯文本文件格式,这些csv文件通常用于在不同应用程序之间交换数据。因分隔符没有严格的要求,可以使用逗号,也可以使用其他字符(如制表符\t,分号等),所以CSV也被称为逗号分隔或者其他字符分隔值。csv文件是使用纯文本来存储表格数据(只能存储文本,不能存储二进制)。

3.项目实战

3.1环境准备

1.下载opencsv.jar

下载地址:http://www.java2s.com/Code/Jar/o/Downloadopencsv23jar.htm,下载zip,解压出来就可以看到opencsv-2.3.jar。如下图所示:

2.添加到eclipse项目的lib中,如下图所示:

3.桌面制作一个test.csv文件,打开一个记事本,输入如下格式和内容:

4.修改文件后缀,变成test.csv文件。

5.把这个文件放到项目的Files文件夹下。如下图所示:

3.2代码设计

1.用opencsv方法去读取csv文件内容,如下图所示:

3.3参考代码

package lessons;

import java.io.FileReader;
import java.io.IOException;
import java.util.Iterator;
import java.util.List; import au.com.bytecode.opencsv.CSVReader; /**
* @author 北京-宏哥
*
* @公众号:北京宏哥
*
* 《手把手教你》系列技巧篇(六十八)-java+ selenium自动化测试 - 读写excel文件 -下篇(详细教程)
*
* 2022年2月15日
*/
public class ReadCsv { public static void main(String[] args) throws IOException { // 加载CSV文件
@SuppressWarnings("resource")
CSVReader reader = new CSVReader(new FileReader(".\\Files\\test.csv")); // t把内容添加到list中
List<String[]> li=reader.readAll();
System.out.println("总共行数是: "+li.size()); // 新建一个Itera引用
Iterator<String[]>i1= li.iterator(); // I遍历每个值
while(i1.hasNext()){ String[] str=i1.next(); System.out.print(" 本行的值为 "); for(int i=0;i<str.length;i++)
{ System.out.print(" "+str[i]); }
System.out.println(" "); }
} }

3.4运行代码

1.运行代码,右键Run AS->Java Appliance,控制台输出,如下图所示:

4.小结

今天这个内容相对于前边的比较简单,时间不早了,今天宏哥就分享和讲解到这里,感谢您耐心地阅读!

 

《手把手教你》系列技巧篇(六十九)-java+ selenium自动化测试 - 读取csv文件(详细教程)的更多相关文章

  1. 《手把手教你》系列技巧篇(十)-java+ selenium自动化测试-元素定位大法之By class name(详细教程)

    1.简介 按宏哥计划,本文继续介绍WebDriver关于元素定位大法,这篇介绍By ClassName.看到ID,NAME这些方法的讲解,小伙伴们和童鞋们应该知道,要做好Web自动化测试,最好是需要了 ...

  2. 《手把手教你》系列技巧篇(十七)-java+ selenium自动化测试-元素定位大法之By css上卷(详细教程)

    1.简介 CSS定位方式和xpath定位方式基本相同,只是CSS定位表达式有其自己的格式.CSS定位方式拥有比xpath定位速度快,且比CSS稳定的特性.下面详细介绍CSS定位方式的使用方法.xpat ...

  3. 《手把手教你》系列技巧篇(十一)-java+ selenium自动化测试-元素定位大法之By tag name(详细教程)

    1.简介 按宏哥计划,本文继续介绍WebDriver关于元素定位大法,这篇介绍By ClassName.看到ID,NAME这些方法的讲解,小伙伴们和童鞋们应该知道,要做好Web自动化测试,最好是需要了 ...

  4. 《手把手教你》系列技巧篇(七)-java+ selenium自动化测试-宏哥带你全方位吊打Chrome启动过程(详细教程)

    1.简介 经过前边几篇文章和宏哥一起的学习,想必你已经知道了如何去查看Selenium相关接口或者方法.一般来说我们绝大多数看到的是已经封装好的接口,在查看接口源码的时候,你可以看到这个接口上边的注释 ...

  5. 《手把手教你》系列技巧篇(八)-java+ selenium自动化测试-元素定位大法之By id(详细教程)

    1.简介 从这篇文章开始,要介绍web自动化核心的内容,也是最困难的部分了,就是:定位元素,并去对定位到的元素进行一系列相关的操作.想要对元素进行操作,第一步,也是最重要的一步,就是要找到这个元素,如 ...

  6. 《手把手教你》系列技巧篇(十三)-java+ selenium自动化测试-元素定位大法之By partial link text(详细教程)

    1.简介 本文按计划就要开始介绍partial link text,顾名思义是通过链接定位的(官方说法:超链接文本定位).什么是partial link text呢,看到part这个单词我们就可以知道 ...

  7. 《手把手教你》系列技巧篇(六十四)-java+ selenium自动化测试 - cookie -中篇(详细教程)

    1.简介 今天按照原计划宏哥要用实例来给小伙伴或童鞋们来演示一下,如何利用cookie实现跳过验证码进行登录.这个场景是自动登陆.有很多系统的登陆信息都是保存在cookie里的,因此只要往cookie ...

  8. 《手把手教你》系列技巧篇(十九)-java+ selenium自动化测试-元素定位大法之By css下卷(详细教程)

    1.简介 按计划今天宏哥继续讲解css的定位元素的方法.但是今天最后一种宏哥介绍给大家,了解就可以了,因为实际中很少用. 2.常用定位方法(8种) (1)id(2)name(3)class name( ...

  9. 《手把手教你》系列技巧篇(六十)-java+ selenium自动化测试 - 截图三剑客 -中篇(详细教程)

    1.简介 前面我们介绍了Selenium中TakeScreenshot类来截图,得到的图片是浏览器窗口内的截图.有时候,只截浏览器窗口内的图是不够的,而且TakeScreenshot截图只针对浏览器的 ...

随机推荐

  1. JAVA之G1垃圾回收器

    概述 G1 GC,全称Garbage-First Garbage Collector,通过-XX:+UseG1GC参数来启用,作为体验版随着JDK 6u14版本面世,在JDK 7u4版本发行时被正式推 ...

  2. python中join()方法介绍

    描述 Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串. 语法 join()方法语法:str.join(sequence) 参数 sequence -- 要连接的元 ...

  3. day 10 删除空白字符

    (1).有以下程序(大写变小写) (2).有以下程序,在[1]填写程序,使得程序正确运行. 分析:(*p)(int,int)是一个函数指针(一个指针[*p]指向的对象是一个函数),函数的形参是(int ...

  4. Cesium源码剖析---Ambient Occlusion(环境光遮蔽)

    Ambient Occlusion简称AO,中文没有太确定的叫法,一般译作环境光遮蔽.百度百科上对AO的解释是这样的:AO是来描绘物体和物体相交或靠近的时候遮挡周围漫反射光线的效果,可以解决或改善漏光 ...

  5. zookeeper,kafka,redis等分布式框架的主从同步策略

    1 zookeeper选主机制 1.1 LeaderElection选举算法 选举线程由当前Server发起选举的线程担任,他主要的功能对投票结果进行统计,并选出推荐的Server.选举线程首先向所有 ...

  6. pytest文档8-参数化(parametrize)结合allure.title()生成不同标题报告

    参数化parametrize 先看一个简单的pytest参数化案例演示test_a.py # test_a.py import pytest import allure def login(usern ...

  7. es6中的导入与导出

    参考:https://www.cnblogs.com/sherrycat/p/11152994.html

  8. MyCms 自媒体 CMS 系统 v2.6,SEO 优化升级

    MyCms 是一款基于Laravel开发的开源免费的自媒体博客CMS系统,助力开发者知识技能变现. MyCms 基于Apache2.0开源协议发布,免费且不限制商业使用,欢迎持续关注我们. V2.6 ...

  9. MySQL函数学习(一)-----字符串函数

    一.MySQL 字符串函数 \ 函 数 名 称 作 用 完 成 1 LENGTH 计算字符串字节长度 勾 2 CONCAT 合并字符串函数,返回结果为连接参数产生的字符串,参数可以是一个或多个 勾 3 ...

  10. BugKu-杂项(Misc)的部分Writeup(持续更新)

    第一次写博客,有不好的地方,麻烦大佬指正,我用了些时间把BugKu里的Misc的解题思路和套路整理了一下,发出来分享 各位小可爱们,右边有目录可以快速跳转哦 1.签到题 给了一张二维码,扫描关注就得到 ...