从Excel文件中读取特定列到c++
Read specific columns from Excel file to C++
我对c++比较陌生(我确实知道基础知识,并且自己成功地完成了程序),我正试图创建一个项目来简化我需要的大量信息的数据处理。
输入数据为30000行27列的excel文件。从这些数据中,我需要提取4个特定的列(总是列2,8,14和20),我想把每一列放入一个单独的数组,第一列应该由字符串组成,第二和第三个整数和最后一个字符串也是。由于第一行包含列描述,因此尝试省略第一行将是一个好主意。excel文件当前为'.xlsx'格式。
我花了整整两天的时间研究这个问题,但还是不知道从哪里开始。我读到将文件类型转换为"。csv"格式,并使用名为"stl"的东西可能是有用的,但根据我所拥有的信息,我觉得完全无法这样做。我不希望有人为我解决这个问题,如果有人能指出我在正确的方向,我将不胜感激,无论是在哪里寻找我需要的信息或开始我。一旦我设法将数据读入数组,我实际上知道如何编程处理,但这部分欺骗了我。
感谢您的帮助和阅读时间。
正如您所说,您可以将excel文件转换为csv文件并读取它。关于这个话题,你会找到很多关于SO的答案,例如,我如何在c++中读取和解析CSV文件
否则,您可以依赖一些外部库,例如libxl(只是google:D上的第一个结果)。然后,您可以读取现有的excel,如:
Book* book = xlCreateBook();
if(book)
{
if(book->load(L"example.xls"))
{
Sheet* sheet = book->getSheet(0);
if(sheet)
{
const wchar_t* s = sheet->readStr(2, 1);
if(s) wcout << s << endl;
double d = sheet->readNum(3, 1);
cout << d << endl;
}
}
book->release();
}
相关文章:
- 理解boost::asio-async_read在无需读取内容时的行为
- 使用新行和不使用新行读取文件
- 读取文件并输入到矢量中
- 用c++从输入文件中读取另一行
- 读取文件的最后一行并输入到链接列表时出错
- 在进程中对同一管道进行读取和写入时C++管道出现问题
- 无法找到/读取配置文件.conf-FileIOException
- 如何使用Luacneneneba API正确读取字符串和表参数
- C++将文本文件中的数据读取到结构数组中
- 正在将csv文件读取为双精度矢量
- 为什么 sscanf 无法从一个字符串中读取uint64_t和字符?
- 为什么在读取文件大小时文件IO速度会发生变化
- 正在读取二进制文件(is_open)
- 如何在c++中从文本文件中逐行读取整数
- SSH通过/sbin/SSH无法读取RSA密钥文件(从控制台运行)
- 独立读取-修改-写入顺序
- 从文本文件中读取时钟时间和事件时间并进行处理
- 如何从文本文件中读取值和数组
- 为什么文件名被设置为一个点,而不是在读取矢量中的文件名时
- 一种在C++中读取TXT配置文件的简单方法