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 !

Sujet : Parser un fichier Texte [ Divers / Général ] (SeiKen02100)

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é dans : fichier, donnée, texte, colonne1, alala


Répondre à ce message

Sujets en rapport avec ce message

AIDER MOI [ par nounours ] Voila j'est un fichier texte *.txtet je voudrais pouvoir metre les donnée de ce fichier texte dans un tableau comment doije fairemerci de votre aide : Comment afficher le contenu d'un fichier texte dans une page? [ par truckracing ] Bonjour. Je débute tout juste dans le PHP, et j'ai déjà un pb...Je suis en train de traduire mon site (www.coursesdecamions.com) en anglais, et j'ai d probleme conversion HTML -> Texte -> HTML [ par Cho7Kipu ] Coucou tt le monde !Bon alors j'explik mon probleme :J'ai fait un site de partition. Pour que mon moteur puisse rechercher des mots contenu dans une d Fichier [ par koko ] J'aimerais pouvoir ouvrir et écrire dans un fichier texte. Mais c'est pas du bete texte a écrire. 1. Quand j'écris quelques choses, le texte doit se Lecture de fichier [ par koko ] Je voudrais lire un fichier fichier.txt dans la page index.phpvoici ma fonction$fp = fopen("fichier.txt","r"); $donnees = fgets($fp,255); fclose( Edition de fichiers txt [ par ceeno ] Bonjour,voila, j'aimerais écrire dans un fichier texte entre 2 balises.Par exemple, prenons un fichier texte.txt qui contient :Je souhaite ajouter une Question de neebies!!!!!!! [ par defkrie ] Bonjour,jai une variable $chars qui contient le mot "aze" et un fichier texte "charts.txt". Dans ce fichier texte, à chaque ligne jai un mot du meme n fichier texte ds texte area [ par kinooo ] comment afficher le contenu d'un fichier txt ds un texte area?et récup"rer ce contenu pour ecraser et copier dans le fichier txt?merci fichier texte ds texte area [ par kinooo ] comment afficher le contenu d'un fichier txt ds un texte area?et récup"rer ce contenu pour ecraser et copier dans le fichier txt?merci Editer un fichier texte dans une zone de saisie [ par la_glisse ] Bonjour,je suis débutant et je cherche comment éditer un fichier texte dans une zone de saisie comme celle ou nous écrinons tous pour laisser nos mess


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

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,374 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é.