begin process at 2012 05 30 03:52:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

manipulation d'un fichier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

manipulation d'un fichier

mercredi 5 juillet 2006 à 16:52:25 | manipulation d'un fichier

Stiko

slt;
c'est une programme pour ouvrire un fichier 'toto.txt', la premiere partie est pour afficher le cntenu de fichier dans la cosole et la deuxiéme partie pour compter le nombre de ligne de meme fichier.et comme vous pouvez noté que j étais obligé de faire 2 fois le" ifstream" car si je met les 2 partie sous la meme ifstream il ne m'a ffiche que la première.


#include <algorithm>
#include <fstream>
#include <string>
#include <iostream>
using namespace std;

int main()
{
// le constructeur de ifstream permet d'ouvrir un fichier en lecture
ifstream fichier( "toto.txt" );

if ( fichier ) // ce test échoue si le fichier n'est pas ouvert
{
string ligne; // variable contenant chaque ligne lue
while ( getline( fichier, ligne,'\0') )
{
cout << ligne << endl;
}

ifstream fi ("toto.txt" );

int lines = count(
istreambuf_iterator<char>( fi ),
istreambuf_iterator<char>(),
'\n' );

// cette boucle s'arrête dès qu'une erreur de lecture survient

// afficher la ligne à l'écran
cout << lines << endl;
}
}


le fihier "toto.txt":


2958 ; 2944 ; 2980 ; 2971 ; 2981 ; 2956 ; 2964 ; 2987 ; 2968 ; 29 ;
2991 ; 3017 ; 3016 ; 3025 ; 3032 ; 3043 ; 2994 ; 3008 ; 2994 ; 3008 ;


le resultat affiché sur la console est un string "ligne" comment il faut faire pour le faire afficher comme un integer??, et
une derniere question comment il faut faire pour changer le ';' en ", "dans le resultat finale.je pense que je suis un peu chiant.
merci pour votre réponse
mercredi 5 juillet 2006 à 19:31:37 | Re : manipulation d'un fichier

luhtor

Oue tu es chiant, car ce pb tombe 10 fois par semaines. Si tu prenais le temps de regarder le forum, tu aurais probablement ta réponse. Cependant, arrete de bricoler avec 2 ifstream, et dis toi que si ca marche pas avec un, l'erreur vient de toi. Et faut pas que tu t'autorises du bricolage sous prétexte que: "tiens comme ca, ca marche".

Une bonne chose serait ptet de revenir au début du fichier apres ta série de getline non ? Car forcément, si tu lis apres le fichier, ca bloque. fichier.seekg(0) pour revenir au début.

Pour convertir en entier, faut pas extraire dans un string, mais:
int valeur; char point;
file >> valeur;
file >> point;
file >> valeur;
etc ... c'est un peu pourri, mais au moins, ca marchera, sauf si ton fichier ne respecte par exactement le schéma: entiers séparés par ";".
Ou tu peux faire la meme chose en chargeant dans un std::istringstream;
getline( fichier, ligne,'\0')
std::istringstream iss(ligne);
iss >> entier;
iss >> point;
iss >> entier;


Cette discussion est classée dans : fichier, ligne, txt, toto, ifstream


Répondre à ce message

Sujets en rapport avec ce message

saut de ligne dans un fichier .txt [ par semenzato ] bonjour ,je voudrais savoir comment faire un saut de ligne dans un fichier texte car mon instruction \n n'est pas comprise et il en resulte un carré n lire un fichier txt ligne par ligne [ par lapinrose67 ] Bonsoir,Je developpe un logiciel en C sous Linux, voila mon problème:Je dois lire un fichier texte ligne par ligne et placer chacune d'entre ellesdans Comment se positionner sur une ligne dans un ifstream? [ par mcrogiez ] Bonjour à tous,Mon problème est très simple, cependant, je n'arrive pas à le résoudre.En C++, j'utilise des objets de type ofstream et ifstream afin d utilisation de ifstream [ par gromito ] salut,j'essaye de réaliser une application me permettant de lire dans un fichier mais j 'ai quelques problemes.comment je dois m'y prendre pour réalis lecture de la derniere ligne dans un fichier texte ouvert avec ifstream [ par indusine ] Bonjours à tous,je voudrais lire la derniere ligne d'un fichier texte ouvert en lecture avec ifstream.Dans mon application(MFC AppWizard exe)Visual C+ Ajouter un CString a chaque ligne fichier TXT [ par kilory ] Salut,j'est un fichier txt que j'ouvre avec la commande fopen et je vourais ajouter a chaque debut de ligne du texte un slach . merci. passage à la ligne dans un fichier.txt aprés chaque mot [ par romydamour ] salut à tous, j'ai un souci avec le passage à la ligne dans un fichier texte, j'ai su transférer le contenu de plusieurs fichiers dans un seul et même Lire une ligne d'un fichier txt [ par Arnauti ] Bonjour, je suis débutant en C. J'aimerais bien savoir s'il est possible de lire dans un fichier *.txt une ligne au choix. Si oui, comment est-ce poss Comment récuperer ligne par ligne dans un fichier.txt [ par arsenecouette ] Bonjour à tous,Voila mon second prb de la semaine et je fais donc appel une nouvelle fois à vos connaissances.Dans un fichier.txt, je sauvegarde un ma ecriture saut de ligne dans un fichier [ par mogwai93 ] j'essaie d'ecrire un saut de ligne dans un fichier sauf qu'il ne m'ecrit que 0A au lieu de 0D 0A comment corriger ? merci     hFile = CreateFile(Mon_


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales