Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1805 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [ PHP ] Pb LF vs. CRLF a la lecture/ecriture de fichiers

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[ PHP ] Pb LF vs. CRLF a la lecture/ecriture de fichiers

n°137412
JWhy
je peux plier (héhé)
Posté le 11-05-2002 à 08:41:28  profilanswer
 

Je debute en PHP et je dois faire un programme qui va lire un fichier , faire des trucs avec ce qu'il a lu et ecrire le resultat dans un autre fichier (classique, quoi!)
Une fois ce nouveau fichier genere, un programme externe va le lire et faire des trucs avec...
 
Le pb est que les sauts de lignes du fichier en entree sont des LF (#10) et pour une raison que j'ignore, les  sauts de lignes du fichier en sortie deviennent des CRLF (#13#10) :??:
Bien evidemment, le programme externe n'aime pas les CRLF et se met a déconner :(
 
J'ai donc refait un petit programme tout simple qui ne fait que lire un fichier et ecrire ce qu'il a lu dans un autre fichier:


(pour voir les diffs, faire un "Sauver la cible" et ouvrer le fichier avec votre editeur hexa prefere)
 
Voila mon code:

Code :
  1. <html>
  2. <body>
  3. <?
  4.   $filepath ="c:\\test.txt";
  5.   $fp = fopen ($filepath, "r" );
  6.   $content = fread ($fp, filesize ($filepath));
  7.   fclose ($fp);
  8.  
  9.   echo  "<pre>$content</pre><br>";
  10.  
  11.   $fp = fopen("$filepath.new.txt", "w" );
  12.   fwrite($fp, $content, strlen($content));
  13.   fclose ($fp);
  14.   echo "c'est fait"
  15. ?>
  16. </body>
  17. </html>


 
j'ai loupé un episode ou cette conversion LF en CRLF est une fonctionnalité de PHP ?!?
 
ah oui et  j utilise EasyPHP 1.6.0.0 (Apache/1.3.24 (Win32) PHP/4.2.0) sous Win2k (je ne sais pas si ca a son importance)

 

[jfdsdjhfuetppo]--Message édité par JWhy le 23-05-2002 à 00:47:54--[/jfdsdjhfuetppo]


---------------
www.alliancefrancophone.org ... Home is where the heart is
mood
Publicité
Posté le 11-05-2002 à 08:41:28  profilanswer
 

n°137413
JWhy
je peux plier (héhé)
Posté le 11-05-2002 à 08:53:04  profilanswer
 

rhaa le con...3h que je planche la dessus: php.net, google.com, etc.. etc... rien trouvé !
 
juste apres avoir posté, je retourne voir le manuel PHP, histoire de me donner bonne conscience et je tombe la dessus dans l'aide de fopen (aide que j'ai du lire une bonne dizaine de fois ce soir !):

Code :
  1. Note: The mode may contain the letter 'b'. This is useful only on systems which differentiate between binary and text files (i.e. Windows. It's useless on Unix). If not needed, this will be ignored.


 
bien evidemment rajouter le b dans le mode d'ouverture du fichier a resolu mon probleme  :sarcastic:

 

[jfdsdjhfuetppo]--Message édité par JWhy le 11-05-2002 à 09:40:29--[/jfdsdjhfuetppo]


---------------
www.alliancefrancophone.org ... Home is where the heart is

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [ PHP ] Pb LF vs. CRLF a la lecture/ecriture de fichiers

 

Sujets relatifs
[HTML & PHP] Input type='hidden' ...[objet] [PHP]
[HTML & PHP & Javascript] Formulaires[PHP 4.2.0 - phpMyAdmin 2.2.6] incompatibilité???
[SQL et PHP] - Moyenne[PHP] mkdir et permissions chez free [resolu]
[PHP] comprend pas cette ligne[ASP-PHP] équivalence de code
[PHP] Numéro de semaine HELPPPPBesoin d'aide en PHP [Newbie]
Plus de sujets relatifs à : [ PHP ] Pb LF vs. CRLF a la lecture/ecriture de fichiers


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR