begin process at 2012 05 30 17:14:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Parser un fichier Texte


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

Parser un fichier Texte

jeudi 17 juillet 2008 à 09:41:53 | Parser un fichier Texte

SeiKen02100

Bonjour,
Alors voila je vous explique le problème, j'ai un fichier texte sous cette forme la :

?,Alala,Balala,Calala,Dalala,Elala,Falala,Galala,Halala
Nom1,a1,b1,c1,d1,e1,f1,g1,h1
Nom2,a2,b2,c2,d2,e2,f2,g2,h2
Nom3,a3,b3,c3,d3,e3,f3,g3,h3
Nom4,a4,b4,c4,d4,e4,f4,g4,h4
Nom5,a5,b5,c5,d5,e5,f5,g5,h5
Nom6,a6,b6,c6,d6,e6,f6,g6,h6
...
Donc en gros cela donne, pour mieux comprendre :

NomCollone0,NomCollonne1,NomCollone2,NomCollonne3,NomCollone­4,NomCollonne5
NomLigne1,donnée_colonne1_ligne1,donnée_colonne2_ligne1,donn­ée_colonne3_ligne1...
NomLigne2,donnée_colonne1_ligne2,donnée_colonne1_ligne2,...
NomLine3,donnée_colonne1_ligne3,donnée_colonne2_ligne3,...
NomLigne4,donnée_colonne1_ligne4,donnée_colonne2_ligne4,...
...

(Je ne sais pas si c'est plus clair...)

C'est un exemple le vrai fichier est beaucoup plus gros.
Le but est de parser ce fichier pour obtenir a la fin dans un autre fichier texte:

1,Alala,a1
2,Alala,a2
3,Alala,a3
...

donc en gros en espérant être plus clair ça devrait donné:

NomLigne1,NomCollonne1,donnée_colonne1_ligne1
NomLigne2,NomCollonne1,donnée_colonne1_ligne2
NomLigne3,NomCollonne1,donnée_colonne1_ligne3
...

Ça pour X nombre de ligne et Y nombre de colonne
Cela peut amener a un fichier texte avec des millions de lignes...

Si vous pourriez me donner quelque conseils et solutions ça serait super
Merci beaucoup
jeudi 17 juillet 2008 à 11:48:03 | Re : Parser un fichier Texte

Bling 182

je dirais d'utiliser readline, explode, et faire quelques jolies boucles...

--
Développeur web freelance - Bling182 Dev : http://freelancedev.ovh.org - http://www.bling182.fr
jeudi 17 juillet 2008 à 12:15:23 | Re : Parser un fichier Texte

SeiKen02100

Merci, voila ce que j'ai fais pour le moment, mais c'est loin d'être vraiment ce que je veux

<html>
<body>
<?php
$fp ="essai.txt";

if (file_exists($fp))
{
$tableau = file($fp);
$tmp=count($tableau);
$i=0;

while($tmp>$i)
{
    $tab=explode(",",$tableau[$i]);
       
echo $tab[0].'<br>';
echo $tab[1].'<br>';
echo $tab[2].'<br>';
    $i++;
}
}
?>
</body>
</html>

Ça affiche seulement pour chaque ligne du tableau les 3 première données qui étaient séparer par une "," (normal je sais), je n'arrive pas a faire la boucle qui afficherait tout le contenu d'une ligne a moins de faire des echos du nombre de colonne, mais comme ça doit marcher pour d'autre fichier c'est pas la solution...

Je suis perdu dans tout ca...

vendredi 18 juillet 2008 à 13:33:51 | Re : Parser un fichier Texte

audayls

Salut,

Essaye ceci ça devrait te convenir =)

<?php

// On ouvre sous forme de tableau le fichier "text.txt".
$aFile = file('text.txt');

// On crée la fonction "Seiken" qui va insérer le nom de la colonne avant la valeur.
function Seiken(&$sValue, $iKey, $aFirst) {
    if ($iKey !== 0) $sValue = $aFirst[$iKey].','.$sValue;
}

// On crée la variable "$aTemp" qui contiendra la première ligne.
$aTemp = array();

// On crée la variable "$sReturn" qui contiendra le fichier final.
$sReturn = '';

// On analyse toutes les lignes du tableau de la variable "$aFile".
foreach($aFile as $iKey => $sValue) {
   
    // On enlève le saut de ligne à la fin de chaque valeur.
    $sValue = str_replace("\r\n", '', $sValue);
   
    // On crée un tableau à partir des virgules.
    $aValue = explode(',', $sValue);
   
    // Si c'est la première ligne du tableau on la place dans la variable $aTemp.
    if ($iKey === 0) $aTemp = $aValue;
    // Si ce n'est pas la première ligne on execute la fonction Seiken sur le tableau.
    else {
        array_walk($aValue, 'Seiken', $aTemp);
        $sReturn .= implode(',', $aValue)."\r\n";
    }

}

// On retire le dernier saut de ligne.
$sReturn = substr($sReturn, 0, strlen($sReturn)-2);

// On affiche le résultat.
echo $sReturn;

?>


For every choice, a consequence (Fable)


Cette discussion est classée dans : fichier, donnée, texte, colonne1, alala


Répondre à ce message

Sujets en rapport avec ce message

Recuperer donnée dans un fichier texte [ par smocky05 ] Bonjour, Cela fait plusieurs heures que je recherche sans succes un code en php. Je crait un sondage avec photos pour un concours photo . avec d Modifier fichier texte en délimitant les zones de modifications [ par mageek06 ] Bonjour, j'ai un fichier texte délimité avec plusieurs lignes dont les données sont délimitées par des | : 20101220|0943|Donnée 1| 20101220|0943|Don probleme modification fichier texte [ par mageek06 ] Bonjour, dans un formulaire j'aimerais dans une zone de texte éditer un fichier selon sa date. Le probleme est que lorsque je rentre la date (1502200 modifier chaine fichier texte [ par sly456328971 ] Bonjour, je cherche à remplacer une chaine dans une fichier texte sans succes : [code=php] if (isset($_GET['ajout'])) // Si on demande de supprimer fichier texte et tableau a double entréé [ par mageek06 ] Bonjour, j'ai un fichier de la forme : A|C|30| B|D|100| D|B|20| B|A|150| G|I|15| A|G|40| C|C|30| J'aimerais créer un tableau a double dimension in Automatisation d'une insertion dans un fichier texte en fontion de l'heure [ par sly456328971 ] Bonjour, Dans un fichier texte, j'aimerais automatiser l'insertion d'une ligne tous les jours a 13h00 par exemple. Je sais qu'en php on peut récupére tester fichier texte [ par youvalcsharpp ] bonjour , Je voudrai savoir comment tester les 3 derniers caracteres d'un fichier texte jai ce code : [code=php]<?php $verif=@fopen("fichier.txt","r+ vider fichier texte PHP Al'aideeeeee [ par youvalcsharpp ] Bonsoir, J'ai un fichier texte : nom.txt. Comment le vider ? Mercii urgentttttt Fichier texte dans un tableau [ par cchaillet ] Bonjour, Je suis sous UBUNTU avec XAMPP. J'ai le fichier texte fichier.txt situé dans le répertoire /opt/lampp/htdocs/Serveur_test/content/PDF_to_TXT/ Modification Varible PHP ... ??? [ par omarino_007 ] Salut à tous, Je travail sur un site en PHP sur une base MYSQL, mon problème est de gérer un texte défilant (news) qui est chargé automatiquement à pa


Nos sponsors


Sondage...

Comparez les prix

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,686 sec (3)

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