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

  FORUM HardWare.fr
  Programmation
  C

  Problème : Utilisation sous Unix de fichiers écrits sous Windows

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème : Utilisation sous Unix de fichiers écrits sous Windows

n°608232
EagleOne33
Posté le 11-01-2004 à 19:13:47  profilanswer
 

Bonjour, voilà j'ai un problème avec des fichiers que j'écris sous windows et que j'utilise sous unix.  
 
En fait le programme qui utilise ces fichiers sous unix est un analyseur lexical que j'ai écrit. Et comme vous le savez peut-être quand on écrit un fichier sous windows, à chaque fin de ligne, il rajoute \r\n ... Alors que sous unix il ne voit que les \n et met des ^M à tous les endroits où il trouve un \r.  
Alors j'ai trouvé des scripts pour virer ces \r mais mon analyseur lexical ne fonctionne quand même pas. Alors j'aurai voulu écrire directement des fichiers mode Unix sous windows. J'utilise Xemacs et connaissant un peu cet éditeur, je suis sûr qu'il existe une fonction pour faire celà (pas mettre ces \r à la "*^ù" ) mais je ne la trouve pas.  
Alors mon analyseur lexical plante quand je l'exécute sur un fichier de test que j'ai écrit sous windows. Je pourrai modifier directement mon analyseur lexical mais c'est pas très recommandé en fait donc je cherche le moyen d'écrire sous windows des fichiers comme si je les écrivais sous Unix.
 
 
Je sais pas si j'ai été très clair mais demandez des précisions si vous sentez que vous pouvez répondre mais que vous ne savez pas trop à quelle question répondre :p
 
Merci d'avance

mood
Publicité
Posté le 11-01-2004 à 19:13:47  profilanswer
 

n°608235
gilou
Modérateur
Modzilla
Posté le 11-01-2004 à 19:20:21  profilanswer
 

Ton analiseur lexical est pas capable de considerer \r\n et \n comme un seul et meme token??
Hmmm
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°608239
Taz
bisounours-codeur
Posté le 11-01-2004 à 19:24:58  profilanswer
 

man flip

n°608380
mrbebert
Posté le 11-01-2004 à 21:42:05  profilanswer
 

il existe parfois des commandes dos2unix et unix2dos

n°608645
SoWhatIn22
Posté le 12-01-2004 à 08:42:51  profilanswer
 

tu peux ajouter dans ton .emacs:
;;;convert a buffer from dos ^M end of lines to unix end of lines
(defun dos2unix ()
  (interactive)
    (goto-char (point-min))
      (while (search-forward "\r" nil t) (replace-match "" )))
 

n°608691
Taz
bisounours-codeur
Posté le 12-01-2004 à 10:20:39  profilanswer
 

oui mais bon, c'est pas aussi simple, c'est les '\r\n' qu'il faut remplacer par un unique '\n'

n°608859
SoWhatIn22
Posté le 12-01-2004 à 12:58:33  profilanswer
 

dans un fichier texte, c'est quand même assez peu fréquent d'avoir des caractères '\r' isolés. Même si ça se peut, c'est peu fréquent. Dans tous les autres cas, cette fonction est alors très utile, notemment dans le cas présent. Je sais que quand j'ai un fichier texte, comme un .c ou .cpp et consorts, qui a des ^M quand je l'ouvre avec emacs, et ben j'appelle cette fonction et pouf, c'est bon.
 
Mais c'est vrai, il faudrait faire un peu plus 'fin'

n°608869
Kristoph
Posté le 12-01-2004 à 13:07:46  profilanswer
 

<mode troll="off">
Sous Vim ça marche tout de suite. Il marque dans la barre d'état [DOS] et il y a des commandes pour faire la convertion dispo par defaut :set ff=dos et :set ff=unix ( agit à la sauvegarde )
</mode>
 
C'est juste pour information, pas pour lancer un troll entre les editeurs.

n°608878
fodger
ARRRACHHEE TTAAA FFFOUUFFOUNE!
Posté le 12-01-2004 à 13:40:46  profilanswer
 

dos2unix marche très bien.

n°609305
Carbon_14
Posté le 12-01-2004 à 19:00:37  profilanswer
 

Pour lire des fichiers texte sous Windows qu'ils soient Unixiens ou Windowesques, j'utilise PFE (éditeur ASCII gratuit, Programmer's File Editor d'Alan Phillips, mon éditeur habituel). On passe de l'un à l'autre quand on exporte en (dé)cochant une case.


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

  Problème : Utilisation sous Unix de fichiers écrits sous Windows

 

Sujets relatifs
[PHP] Probleme avec $_GET....Windows : timer - coordonnées / Borland Windows <==> Linux
Probleme de polynomes[Mugen] Formats de fichiers... ???
[VB] Probleme de debutant[PHP] Utilisation de RedirectPermanent vers JPG ?
utilisation de dynazip32 - débutante-[résolu]Xerces 1.6 et utilisation d'une DTD
[C++]Probleme avec EXECV(P) sous Windows 
Plus de sujets relatifs à : Problème : Utilisation sous Unix de fichiers écrits sous Windows


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