c++ - 我可以在不知道文本文件的列数的情况下读取二维数组中的文件吗?
问题描述
我想读取二维数组中的文件。基本上文件是这样的
abcedf
ghijkl
mnoqre
现在我知道文件的行,但我不知道列,但所有行的列号都是相同的。现在,如果我这样做。
for (int i = 0; i < row_size; i++){
fin>>value;
row[i]=growfunction
}
使用这个程序将继续将所有文件行添加到第一行,因为没有条件,所以我可以让它移动到第二行。我能做些什么?
感谢您的时间。
解决方案
最好的方法是直接将整行读入字符串,然后使用 std::strstream 将该行的元素输入到数组中的各个值中。
#include <iostream>
#include <sstream>
int main(int argc, char* argv[]) {
std::string line;
while(std::getline(std::cin, line)) {
int rowSize = line.size();
char * row = new char[rowSize];
std::strringstream strm;
strm << line;
for (int i = 0; i < rowSize; ++i) {
strm >> row[i];
}
}
}
推荐阅读
- reactjs - 媒体对象不渲染图像
- npm - 如何在nuxtjs中以开发模式自动生成文件?
- nuxt.js - Nuxt 设置中的路由器问题
- database - 根据 Cassandra 中的查询结果创建新表
- javascript - 在 HTML 中为钱使用自定义数字格式
- javascript - react native:创建组件以最小化代码行
- python - 从 Skimage 导入 io 将 Jupyter Notebook 冻结在 [*] 状态。这怎么可能?
- mysql - 如何在 phpmyadmin SQL 表中查看 SQL 代码
- c# - 如何对始终由生成的代码初始化的引用类型的属性进行空注释?
- node.js - 使用 AWS Transcribe 进行实时转录