如何解决在C ++中使用.txt文件将数据集输入向量可能不止一个数据集
我正在为这个同时使用JNI和C ++的学校进行这个项目。 Java代码是给我的,它使用户可以为有关动物园动物的数据集输入6个不同的输入。最后,它会询问您是否要添加Y或N。
如果是,则输入将在第二行,选择N后将写入.txt文件,格式为:
001235 Alita哺乳动物狼0 0
001234鲍勃·哺乳动物狼0 0
(请注意,两个数据之间没有空行)
下面的代码是我编写的打开文件并将输入转换为向量的内容,该向量可成功用于一行用户输入。我遇到了一个问题,即如何合理地使用户可以输入的向量数量未知。
void LoadDataFromFile()
{
/*
TODO: Write proper code to load data from input file (generated using JNI) into vector/array.
*/
vector<string> zooVector(6);
int count = 0;
unsigned int i;
ifstream inputFile;
inputFile.open("zoodata.txt");
if (!inputFile) {
cerr << "Unable to open file zoodata.txt";
exit(1); // call system to stop
}
while(count < 6) {
for(i = 0; i < 6; ++i) {
inputFile >> zooVector.at(i);
count += 1;
}
}
最终的目标是将其写入内存以进行多类继承,但是我试图使输入对向量起作用。
解决方法
animal
的不同字段不需要字符串向量;您需要一个struct
。
当您需要一个struct
的向量来代表一个动物园时;随着您从文件中读取更多行,它会动态增长。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。