Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

NOMBRE DE LIGNES ET DE COLONNES D'UN FICHIER


Information sur la source

Catégorie :Fichiers / Disque Classé sous : colonnes, lignes, fichier, fstream Niveau : Débutant Date de création : 27/10/2007 Date de mise à jour : 30/10/2007 22:01:42 Vu / téléchargé: 3 012 / 51

Note :
Aucune note

Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

Description

Voici ma première source, qui permet de trouver le nombre de colonnes et de lignes d'un fichier avec la classe fstream..
 

Source

  • //////////// Source par Vince140 ////////////
  • #include <fstream>
  • #include <iostream>
  • using namespace std;
  • void nbLigneCol ();
  • int tailleX, tailleY;
  • int main ()
  • {
  • tailleY = 0;
  • tailleX = 0;
  • nbLigneCol();
  • cout<<"Resultat: "<<tailleX<<" colonnes et "<<tailleY<<" lignes.."<<endl;
  • system("pause");
  • }
  • void nbLigneCol ()
  • {
  • ifstream fichier;
  • fichier.open("test", ios::binary);
  • if(!fichier)
  • {
  • cout<<"Erreur lors de l'ouverture du fichier"<<endl;
  • system("pause");
  • exit(1);
  • }
  • char charac;
  • do{
  • fichier.get(charac);
  • if (charac=='\n' || charac==10)
  • tailleY++;
  • tailleX++;
  • }while(!fichier.eof());
  • tailleY++;
  • tailleX /= tailleY;
  • fichier.close();
  • }
////////////    Source par Vince140    ////////////

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

void nbLigneCol ();
int tailleX, tailleY;

int main ()
{
    tailleY = 0;
	tailleX = 0;

	nbLigneCol();
	
	cout<<"Resultat: "<<tailleX<<" colonnes et "<<tailleY<<" lignes.."<<endl;
	system("pause");
}
void nbLigneCol ()
{
	ifstream fichier;
	fichier.open("test", ios::binary);

	if(!fichier)
	{
		cout<<"Erreur lors de l'ouverture du fichier"<<endl;
		system("pause");
		exit(1);
	}

	char charac;

	do{
		fichier.get(charac);
		if (charac=='\n' || charac==10)
			tailleY++;
		tailleX++;
	}while(!fichier.eof());
	
	tailleY++;
	tailleX /= tailleY;
	fichier.close();
}

Conclusion

Cette source peut être utile pour créer des tableaux ou autre..
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

27 octobre 2007 03:43:40 :
Correction de la source
30 octobre 2007 22:01:42 :
Correction de nombreux bogues..

Commentaires et avis

signaler à un administrateur
Commentaire de Pistol_Pete le 27/10/2007 10:42:14

Salut

N'es tu pas sencé avoir testé ton programme avant de le mettre sur cppfrance.
Pas de main, pas de déclaration de tailleX et tailleY et surtout return TailleX,TailleY  !!!

On ne peut pas retourner deux variables dans un return. Ils faut en passer une en parametre et faire un return ou passer les deux en parametre sans return.

void nbLigneCol (char* nomFichier,int *TailleX,int *TailleY)


signaler à un administrateur
Commentaire de vince140 le 30/10/2007 22:03:48

Oups désolé... J'avais pris la source dans un de mes programmes et j'ai mal corrigé la fonction pour qu'elle fonctionne seule..

signaler à un administrateur
Commentaire de syapk le 02/11/2007 16:36:49

je cree un fichier texte comportant sur la premiere ligne le chiffre 1 et sur la 2eme  ligne les chiffres 1 et 2;
CMD m'annonce:

Resultat: 3 colonnes et 2 lignes..

faut peu etre un type de fichier particulier ou autre desiderata..

signaler à un administrateur
Commentaire de vince140 le 03/11/2007 03:01:26

Non, n'importe quel type de fichier fonctionne, mais le nombre de colonne doit être égal sur chaque ligne.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

c++ [ par ndefa ] bonjour,j'ai un ensembles de réels dans  fichier  test.txt constiuté de n lignes  et 8 colonnes . je voudrais pouvoir le lire ligne par ligne et le c extraire des lignes d'un fichier csv avec visual C++ [ par cre31400 ] Bonjour, J'utilise visual C++, et j'aurais besoin de votre aide. J'ai un fichier .csv contenant environ 1000 lignes, mais seulement une trentaine sont ouvre un fichier txt et, faire un filtrage des lignes qui m'interessent sur visualC++ [ par drcmomo ] Please aidez moi j'ai un fichier txt de 428ko j'arrive pas a l'ouvrir sur visual ke dois je faire, AIDEZ MOI SVP. problème avec l'affichage d'une classe matrice [ par laderivier ] J'ai recontrer un problème complètement fou à mes yeux en voulant creer un classe matrice, qui effectue des calcul de base sur les matrice. voilà le c lecture fichier et test des lignes... [ par jojomillenium ] Bonjour, J'aimerai lire un fichier qui ressemble a ca: KJ  1 3 5; I  OPL; B 12 34 78, 90; I  PPL; et ainsi de suite des lignes qui ne sont pas du meme parcourir tous les lignes d'un fichier texte [ par mqsi ] salut a tous,j'ai un  petit problème c que je cherche a parcourir tous les lignes d'un fichier texte ,pour le nombre du  lignes n'est pas connu(varrié récupérer des lignes d'un fichier txt [ par the_neo_81 ] Bonjour à tous, voila donc ma question.Cela fait un bon moment que je cherche à:    -lire un fichier txt préformater (je sais que tel ligne  = tel inf programme d'ecriture dans un fichier [ par skim13 ] Bonjour,j'ai ecris un programme qui recupere des.C et qui ecrit des lignes que jai mis dans un .txt.Ainsi je fais une liste chainé de mes differents f fstream, >> et << [ par Roro8883 ] Bonjour à tous !J'ai un problème dans mon code avec la fonction fstream.Ca fait depuis un moment que je suis dessus et je trouve pas le problème.Si qu Convertion String char* [ par CerberusAbaka ] Bonjour;   Je développe avec Dev C++ un petit exécutable qui converti des PostScript couleur en noir et blanc, tout marche pas trop mal mais j'ait un


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,265 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.