String von einer datei lesen



  • Hey Leute ic schreibe zurzeit ein kleinen Programm wo ich namen (strings) in einer liste speichern will.

    Meine Write funktion

    //name wurde in den parametern dekladiert
    std::ofstream file("xxxx.txt", std::ios::app);
        file << name;
    

    funktioniert für mich perfekt allerding meine abfrage funktion

    //name wurde in den parametern dekladiert
    int offset;
        std::string line;
        std::ifstream file;
        file.open("xxxx.txt");
        if (file.is_open())
        {
            while (!file.eof())
            {
                getline(file, line);
                if ((offset = line.find(name, 0)) != std::string::npos)
                {
                    return true;
                }
            }
            file.close();
        }
    
        return false;
    

    gibt true zurück wenn auch nur der name (luc) im namen (lucas) existiert.

    Meine Frage:

    Wie kann ich meine Abfrage so bearbeiten dass sie nur true zurück gibt wenn (luc) alleine da steht und nicht in irgendeinem anderen namen sich befindet?



  • Schnellschuss ohne zu testen:

    int offset;
        std::string name_in;
        std::ifstream file;
        file.open("xxxx.txt");
        if (file.is_open())
        {
            while (file >> name_in)
            {
                if (name_in == name)
                {
                    return true;
                }
            }
            file.close();
        }
    
        return false;
    


  • Jap Vielen dank das hat geklappt 🙂


Anmelden zum Antworten