Effacer ligne dans un fichier csv
Bonjour,
je recherche tout simplement comment effacer une ligne dans un fichier csv... merci
je recherche tout simplement comment effacer une ligne dans un fichier csv... merci
Configuration: Windows XP Internet Explorer 6.0
5 réponses
-
On ne peut pas effacer une ligne au beau milieu d'un fichier; le plus simple est de recopier le fichier (sans la ligne, of course!) dans un autre fichier, de détruire l'original et de renommer le nouveau.
Bon courage. -
Contributeurhello
en DOS
findstr /v texte_a_enlever fichier.csv > nouveau_fichier.csv
Unix
grep -v texte_a_enlever fichier.csv > nouveau_fichier.csv -
Contributeuril y a un exemple là http://www.phportail.net/forum/ftopic16.php
-
Contributeurquel OS ?
si il est possible d'appeler une commande externe, envisager sed
un éditeur qui permet de modifier le fichier sans le copier
ou le faire en php-
je suis sur XP.. je te montre ce que je fait .. j'ouvre le fichier et je boucle en fait que sur la ligne que je veux modifier via la variable $modif_ligne. C'est sur cette ligne que je veux écrire les information que je stocke dans $tab.. donc mon objectif, c'est d'arriver a l'effacer.. j'ai essayé d'écrire directement dessus, mais sans succès!
$tab = array("$pilote;","$dateu;","$incident;","$prise_incident;","$environement;","$job_er;","$abend;","$job_erreur;","$job_repri;","$relance;","$hors_perim;","$respect_20mn;","$asset;","$log_erreur;","$diag_pilote;","$topx;","$escalade;","$escalade_justif;","$banque;","$partition;","$commentaire\n");
//$tab_temp = array(" "," "," ");
if ($f = fopen("listePilote/pilotage.csv", "w"))
{
//echo $modif_ligne;
for($i=$modif_ligne;$i<$modif_ligne;$i++)
{
foreach ($tab as $line)
{
fwrite($f, $line);
}
fclose($f);
}
}
else
{
echo 'erreur lors de l\'ouverture du fichier !';
}
-
-
Hoo, sa à l'air sympa sa.. je test et je reviens poster le résultat :)