Getline à la Chaîne des Copies de saut de ligne ainsi

Je suis à la lecture d'un fichier ligne par ligne et l'ajout de chaque ligne dans une chaîne de caractères. Cependant la longueur de la corde augmente de 1 à chaque ligne, je crois que c'est dû à caractère de saut de ligne. Comment puis-je le supprimer d'être copiés.

Voici mon code de tenter de faire de même.

if (inputFile.is_open())
{
    {
        string currentLine;
        while (!inputFile.eof())
            while( getline( inputFile, currentLine ) )
            {
                string s1=currentLine;
                cout<<s1.length();
            }

[Mis à jour la Description] j'ai utilisé notepad++ pour déterminer la longueur de ce que je suis en sélection ligne par ligne. Ils sont donc à montrer certaines 123, 450, 500, 120 pour que mon programme affiche 124,451,501,120. Sauf la dernière ligne, tous ligne.longueur() montre une augmentation en valeur de 1.

  • Bienvenue sur StackOverflow. J'ai formaté votre code pour vous. Le premier est gratuit. Après que vous avez à m'acheter une pinte de bière 😉
  • std::getline() rejette le caractère de saut de ligne. Comment faites-vous connaître la longueur de la ligne?
  • À l'aide de cout<<s1.length();
  • C'est la longueur de la ligne lue par std::getline(), qui semble être différent de ce que vous attendez,
  • C'est peut-être un problème de saut de ligne sur les différents plattforms? D'où vient le fichier à partir de, sur la plate-forme que vous avez écrit votre programme?
InformationsquelleAutor typedef1 | 2012-01-22