c++ einlesen einer datei

Surf-Chiller

Komplett-PC-Aufrüster(in)
Hi,

ich habe eine Textdatei die ich gerne einlesen würde. Sie enthält jede zeile einen value namen und wert. Ich müsste die namen mit denen meiner values vergleichen und bei übereinstimmung den wert zuweisen. Es wäre echt toll wenn jemand wüsste wie das geht.

viele Grüße,

SurfChiller
 
ja schon klar ich hab eher das Problem die ausgelesene zeile zb. temp 25.0 so zu verarbeiten, dass ich rausfind variable ist temp und wert 25.0 -> temp = 25.0
 
Das ist doch easy.
Wie ist denn deine Datei aufgebaut?

Ungefähr so?

variable wert
variable wert

Dann kannst du das mit einer simplen Split funktion die ungefähr so aussehen könnte lösen:

Code:
std::vector<std::string> &split(const std::string &s, char delim, std::vector<std::string> &elems) {
    std::stringstream ss(s);
    std::string item;
    while (std::getline(ss, item, delim)) {
        elems.push_back(item);
    }
    return elems;
}


std::vector<std::string> split(const std::string &s, char delim) {
    std::vector<std::string> elems;
    split(s, delim, elems);
    return elems;
}

oder mit boost:

Code:
#include <boost/algorithm/string.hpp>

std::vector<std::string> strs;
boost::split(strs, "string to split", boost::is_any_of("\t "));
 
Zuletzt bearbeitet:
explode gabs bei c ned oder? hach, ich liebe diese funktion in php ^^ hab mir die schon zigfach in andren sprachen nachgebaut, weils das scheinbar nirgends sonst gibt O.O
 
Nein, explode gibts nicht. Aber die Lösungen die ich gepostet habe funktionieren out of the box. ;)
 
Zurück