Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/163.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将文件读入向量(C+;+;)时出现问题 我现在是一个计算机专业的二年级学生,我已经进入了一个巨大的墙,我现在正在注册这个C++数据结构类。我必须创建的这个程序应该从文件中读取数据,将数据输入到向量中,并显示该文件的最小值和最大值。她还想让我用一个模板,但我只是想在我穿过那条路之前把它从地上弄下来。现在我遇到的问题是,除了代码中的这一点,我什么都做不到_C++ - Fatal编程技术网

将文件读入向量(C+;+;)时出现问题 我现在是一个计算机专业的二年级学生,我已经进入了一个巨大的墙,我现在正在注册这个C++数据结构类。我必须创建的这个程序应该从文件中读取数据,将数据输入到向量中,并显示该文件的最小值和最大值。她还想让我用一个模板,但我只是想在我穿过那条路之前把它从地上弄下来。现在我遇到的问题是,除了代码中的这一点,我什么都做不到

将文件读入向量(C+;+;)时出现问题 我现在是一个计算机专业的二年级学生,我已经进入了一个巨大的墙,我现在正在注册这个C++数据结构类。我必须创建的这个程序应该从文件中读取数据,将数据输入到向量中,并显示该文件的最小值和最大值。她还想让我用一个模板,但我只是想在我穿过那条路之前把它从地上弄下来。现在我遇到的问题是,除了代码中的这一点,我什么都做不到,c++,C++,这段代码显然不完整,但我似乎不知道如何将这些值读入向量,然后抛出字符串值。老实跟你说,我迷失在酱汁中,因为没有更好的比喻,我把棕色的东西扔到墙上,看看它是否粘在墙上。我单独理解这些主题,但将它们结合起来并放入一个数据文件使我不知所措。如果有人能抽出时间坐下来帮我解决这个问题,因为我的教授已经一周没有回复我的电子邮件了(只上在线课程),而且这个项目将在周二到期,而我已经工作了两天,但什么也没有完成 我将非常感谢您的帮助,并理解我即将失去它。我在Java、DIF-EQ或HTML/CSS课程中没有问题

这段代码显然不完整,但我似乎不知道如何将这些值读入向量,然后抛出字符串值。老实跟你说,我迷失在酱汁中,因为没有更好的比喻,我把棕色的东西扔到墙上,看看它是否粘在墙上。我单独理解这些主题,但将它们结合起来并放入一个数据文件使我不知所措。如果有人能抽出时间坐下来帮我解决这个问题,因为我的教授已经一周没有回复我的电子邮件了(只上在线课程),而且这个项目将在周二到期,而我已经工作了两天,但什么也没有完成

我将非常感谢您的帮助,并理解我即将失去它。我在Java、DIF-EQ或HTML/CSS课程中没有问题,但是这个C++课程绝对支配我(在C++课程的介绍中收到java)。再次感谢,我感谢任何能帮忙的人

//Nicholas Stafford
//COP2535.0M1 
//Read in text file into multiple vectors and display maximum and minimum integers/strings.

#include <iostream> 
#include <string>
#include <vector>
#include <fstream>
#include <algorithm>


using namespace std;



int main() {

    ifstream inputFile; //File input object
    const int fSize = 6;
    int numCt = 0; //Counts number of integers
    vector<int> numInt(fSize);
    string numWd;


    //Open input file
    inputFile.open("minmax.txt");

    //Data validation for file
    if (inputFile)
    {
        //Try method to remove string values
        try
        {
            //Only pull the integer values into a vector
            while (inputFile >> numInt)
            {
                numCt++;
            }
        }
        catch (string noString)
        {
            cout << noString;
        }

    }
}
//尼古拉斯·斯塔福德
//COP2535.0M1
//将文本文件读入多个向量,并显示最大和最小整数/字符串。
#包括
#包括
#包括
#包括
#包括
使用名称空间std;
int main(){
ifstream inputFile;//文件输入对象
常数int fSize=6;
int numCt=0;//计算整数的数量
矢量数值(fSize);
字符串numWd;
//打开输入文件
open(“minmax.txt”);
//文件的数据验证
如果(输入文件)
{
//尝试方法删除字符串值
尝试
{
//仅将整数值拉入向量
while(inputFile>>numInt)
{
numCt++;
}
}
接住(弦鼻环)
{

cout您提到您有Java背景,我很遗憾地通知您您患有Java炎:

    try
    {
        //Only pull the integer values into a vector
        while (inputFile >> numInt)
        {
            numCt++;
        }
    }
    catch (string noString)
    {
        cout << noString;
    }
然后
>
操作符将只读取“2”,而不是“3”。此外,
>
操作符将换行符视为任何形式的空白。正如我所提到的,由于
>
处理错误报告的方式,您必须明确地检查它

总之,以下是在C++中处理每一行输入的方法:

std::string line;

std::getline(std::cin, line);
这将读取一行文本。仅此而已。只有在完成该步骤后,您才能开始与
>
操作符混在一起,找出其中的内容:

std::istringstream parse(line);

parse >> numInt;

if (parse.fail())
{
     // Conversion failed, to what you want with it.
}

干净、简单,这里的解析失败不会影响
std::cin
输入流的状态,否则在失败时您必须重置输入流。

尝试输入一个整数,然后将整数添加到向量中。不需要跟踪向量中的整数数,向量会为您这样做。我建议st寻找导师/在学校与同龄人一起工作。这个广泛的问题(特别是附加不必要的信息)如果你知道C++和它的标准库,那么有一个非常简单的办法,让你做你想做的事情。但是为了帮助你解决这个问题,你首先需要学习输入单个值的基本知识,以及如何逐个地将它们附加到向量中。零问题。我90%的问题是,我似乎找不到一个清晰的示例来显示输入文件被馈送到向量中。@NST“我似乎找不到一个清晰的示例来显示输入文件被馈送到向量中”--你在这里看到了什么?
std::vector v;int x;cin>>x;v.push_-back(x);
--我看到了一个输入流(
cin
)将一个项目放入一个向量。那么您如何在此基础上展开以输入多个项目?这听起来像是在
cin上的某种循环-推回
代码?好的,我现在明白了。getline()操作员将是C++中的合适方法。我将重新构造程序,然后从那里开始。感谢默认的帮助,它不会抛出异常,但是通过设置标志很容易使它抛出。我从你写的东西中看出。所以我应该明确地在C++中做这些异常而不是依赖语言的操作方式。我不会再这样做。推荐启用例外。
std::istringstream parse(line);

parse >> numInt;

if (parse.fail())
{
     // Conversion failed, to what you want with it.
}