IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[CSV] Ne pas lire la première ligne


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 181
    Points : 189
    Points
    189
    Par défaut [CSV] Ne pas lire la première ligne
    bonjour,

    je cherche à extraire certaines données d'un fichier csv et les remettre dans un fichier xls,
    le problème c'est que la première ligne contient les noms des colonnes et je ne veux pas la récupérer.
    je n'ai pas trouvé ce que je voulais sur le net,
    comment dois je faire pour passer cette ligne?
    merci
    ...

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 77
    Points : 89
    Points
    89
    Par défaut
    Que faîtes-vous pour lire votre fichier?

    Une solution simple lire le fichier lignes par lignes et ignorer la première ligne...

    Ou récupérer l'intégralité du contenu du fichier dans une variable et faire un «substring» à partir de l'occurrence du premier caractère de retour de lignes.


    Information sur la lecture d'un fichier en PHP
    http://php.developpez.com/faq/?page=fichiers

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 181
    Points : 189
    Points
    189
    Par défaut
    je mets ma page de conversion (j'enlève une partie que je ne suis pas sûr d'avoir le droit de mettre)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    <?php
    set_time_limit ( 1000000 );
     
    $fichier = "C:\wamp\www\bruno\VOLDATEIATA2006.csv";
     
    if (file_exists($fichier))
    {
    		$fp = fopen("$fichier", "r"); 
    		echo "fichier ouvert<br>";
     }
     else
        { /* le fichier n'existe pas */
    		echo "Fichier introuvable !<br>Importation stoppée.";
    		exit();
        }
    //fichier dans lequel on écrit (csv pour l'instant)
    $logfile="C:\wamp\www\bruno\fichier_voldateiedata_convertit.csv";
    $fp_log=fopen($logfile, "w");	
     
    // crée un  tableau où on va afficher les lignes
    //met les noms de colonnes du fichier csv
    fwrite($fp_log,"chp1;chp2");
    while (!feof($fp)) /* Et Hop on importe */
        { 	/* Tant qu'on n'atteint pas la fin du fichier */ 
    	$ligne = fgets($fp); /* On lit une ligne */  
    		$ligne=str_replace ( "\"", "", $ligne );
    		$ligne=str_replace ( "'", "", $ligne );
     
    		/* On récupère les champs séparés par ; dans liste*/
    		$liste = explode( ";",$ligne);  
     
    		/* On assigne les variables et on fait le traitement*/ 
    		$chp1 = $liste[4];
    		$chp2 = $liste[12];
     
    		//on écrit dans une variable chaque ligne du fichier excel
    		$texte=$novol.";".$dep;
    	echo $texte."<br>".;
     
    //on écrit  la variable dans le fichier
     
    fwrite( $fp_log, "$texte\n");
    $texte="";
    }//fin du while
     
         	echo "<br>Importation terminée, avec succès."; 
     
         	/* Fermeture */ 
         	fclose($fp); 
    ?>
    Citation Envoyé par sim_mmm Voir le message
    Une solution simple lire le fichier lignes par lignes et ignorer la première ligne...
    faire un «substring» à partir de l'occurrence du premier caractère de retour de lignes.
    merci pour la réponse mais je ne comprends pas comment faire ça
    et j'étais déjà allé voir la faq avant de poster
    (le minimum c'est de chercher avant)
    ça doit pas être trop compliqué mais je bug un peu là
    ...

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 181
    Points : 189
    Points
    189
    Par défaut
    avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (!strpos($ligne,"\n"))
    est ce que je suis sur une bonne voie?
    ou y a t-il mieux à faire?

    merci
    ...

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 181
    Points : 189
    Points
    189
    Par défaut
    c'est bon, j'ai trouvé une solution aussi simple que je n'y avais pas pensé.
    J'ai rajouté une variable $i=0 avant mon while et je teste après le fgets() si elle est >0 sinon je l'incrémente

    merci

    (est ce que vous ne pourriez pas l'ajouter à la faq?)
    ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/06/2009, 13h57
  2. [Débutant] Ne pas lire la première ligne d'un fichier texte à son ouverture
    Par Mlezen dans le forum MATLAB
    Réponses: 14
    Dernier message: 11/02/2009, 17h39
  3. Lire la première ligne d'une sous requette
    Par Magohamoths dans le forum Langage SQL
    Réponses: 4
    Dernier message: 25/11/2008, 09h59
  4. [CSV] fopen() - Ne pas lire la 1ère ligne
    Par arnogb69 dans le forum Langage
    Réponses: 3
    Dernier message: 02/06/2008, 16h17
  5. lire la première ligne d'un ficher
    Par hammag dans le forum Langage
    Réponses: 1
    Dernier message: 07/05/2008, 17h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo