测试用例的csv文件的格式
用Excel打开:
用Notepad++打开:
编号,输入,预计结果,备注
1,"
",0,空值
2,"1
",1,1个值
3,"11111
",1,1行
4,"1
1
1
1",1,1列
5,"00000
00000
00000
00000",0,零值
需求
把测试用例文件中的第二列存成vector<vector<vector<char>>>的格式;
C++读取csv文件的方法
#include<vector>
#include<iostream>
#include <fstream>
#include <sstream>
using namespace std;
vector<vector<vector<char>>>testcases;
void Test::readCsv () {
ifstream inFile (_testFile, ios::in); //声明一个ifstream对象,与文件名关联
string lineStr;//声明一个字符串变量,用于接收文件流的一行字符串
vector<vector<char>> grid;
//getline函数的参数是:一个输入流、一个string。当读到换行符时返回,string中不存储换行符。
while (getline (inFile, lineStr))
{
vector<char>row;
for (int i = 0; i < lineStr.size (); i++) {
row.push_back (lineStr[i]);//把该行字符存到row中
}
if(!row.empty())grid.push_back (row);//把该row存到grid中
if (isLast) {//最后一行时
testcases.push_back (grid);
cout << "读取了第" << testcases.size () << "个用例" << endl;
grid.clear ();
}
}
}
C++写入csv文件的方法
//用测试用例来测试代码,并将结果写入文件
void Test::writeCsv () {
ofstream outFile;//声明一个o