Il y a actuellement 219 visiteurs
Samedi 06 Décembre 2025
accueilactualitésdossierscomparer les prixtélécharger gratuitement vos logicielsoffres d'emploiforum informatique
Connexion
Créer un compte

[Réglé]Fichiers texte sous Win/Linux

L'informatique, ce n'est pas qu'un PC équipé de Windows. Ce forum est dédié aux utilisateurs de systèmes d'exploitation dérivés d'unix (GNU/Linux, *BSD, etc...) et aux autres OS alternatifs.

[Réglé]Fichiers texte sous Win/Linux

Message le 16 Sep 2004 08:14

Salut,

J'ai une question (qui aurait aussi pu être posée en prog..), car je suis un peu rouillé sur le sujet...

Je programme en C un petit outil de manipulation/modification de champs, à partir d'un fichier texte. Je travaille sur 2 environnements win (compilateur mingw32) et linux (gcc).

Après pas mal d'essais, j'ai une incompréhension relative aux fin de lignes des fichiers textes.

Sous win, il me semblait que les lignes finissaient par xOD xOA. Sous Linux, par xOA seulement.
Mais, c'est pas tout à fait cela. Sous Linux, quand j'importe (je copie / Samba) un fichier texte de windows, il me garde le xOD xOA. J'ai beau éditer le fichier, le modifier (supprimer le saut de ligne et le recréer) et l'enregistrer, ça ne change pas... (je vérifie avec "hd").
Par contre, si je crée un fichier texte, j'ai bien xOA uniquement en fin de ligne.

Comment cela fonctionne-t-il ?

Et, accessoirement :
- est-ce que l'expression suivante est bonne : xOA == '
' ? xOD == ' ' ?
- faut-il que le programme teste différemment des fin de lignes, selon la plateforme ?

Merci...
Avatar de l'utilisateur
CaSa
PC-Infopraticien
PC-Infopraticien
 
Messages: 9069
Inscription: 13 Mai 2003 16:32
Localisation: Sisteron, perle de Provence... et jamais loin d'une Debian
 


Re: Fichiers texte sous Win/Linux

Message le 16 Sep 2004 09:35

casa04 a écrit:Salut,
Sous win, il me semblait que les lignes finissaient par xOD xOA. Sous Linux, par xOA seulement.

C'est effectivement le cas. Et sur macOs ça finissait autrement jusqu'a très récemment...

Mais, c'est pas tout à fait cela. Sous Linux, quand j'importe (je copie / Samba) un fichier texte de windows, il me garde le xOD xOA. J'ai beau éditer le fichier, le modifier (supprimer le saut de ligne et le recréer) et l'enregistrer, ça ne change pas... (je vérifie avec "hd").

Ton éditeur a du "détecter" qu'il s'agit d'un fichier avec ce format et se souvient qu'il faut faire ce genre de sauts de lignes.
(Idem avec Wordpad sous MS Windows)

- est-ce que l'expression suivante est bonne : x0A == '
' ? x0D == ' ' ?

Oui c'est ça.

- faut-il que le programme teste différemment des fin de lignes, selon la plateforme ?

Si tout (creation, lecture, écriture, suppression) se fait à partir du meme programme en C, ne te préoccupe pas de ce point.
Sinon, tu fais en sorte de n'utiliser ni " " ni "
" dans tes enregistrements
et quelque soit la platte forme tu considère aussi bien"
" que "
" comme des séparateurs.
A l'enregistrement, du coup, tu peux utiliser ce que tu veux...

Sinon, je te conseille un truc comme XML (qui se contrefiche du format des espace/saut de lignes)...
[/quote]
Avatar de l'utilisateur
glenux
PC-Infopraticien
PC-Infopraticien
 
Messages: 2759
Inscription: 01 Mar 2003 16:22
Localisation: Entre deux BarCamps
 

Message le 16 Sep 2004 10:22

Merci pour les précisions...

A ce propos j'avais mis "conv=t" dans le mount pour ma partition FAT partagée avec SAMBA, et il m'avait jeté pour l'obsolescence de l'option :-?
Maintenant, j'essaye de m'en passer.

Bon, j'ai aussi trouvé le bug dans mon programme.. j'ouvrais les fichiers en mode texte "r" ou "w". En mode binaire "rb" ou "wb", ça va beaucoup mieux :-)

Je vais bien finir par y arriver.
Avatar de l'utilisateur
CaSa
PC-Infopraticien
PC-Infopraticien
 
Messages: 9069
Inscription: 13 Mai 2003 16:32
Localisation: Sisteron, perle de Provence... et jamais loin d'une Debian
 



Sujets similaires

Message [Réglé] utiliser le même compte Microsoft sur 2 ordinateurs
Salut tout le monde j'ai reçu mon pc portable : Asus gaming ROG Strix G16 STRIX-G16-G615JMR-RV185W 16" FHD+ 165 Hz Intel® Core? i7 16 Go RAM 512 Go SSD Nvidia GeForce RTX 5060 Gris Lors de la mise en service de ce nouveau pc, il me demande : ajouter votre compte Microsoft, .... ma question est ...
Réponses: 2

Message [Réglé] mise en route carte mère
Bonjour,Dans ma tour, j'ai installé une carte Asrock A520M- HDV, (j'ai un DVD asrock que je n'ai pas mis dedans). Le ventirad Arctic alpine 23co,Le disque Crucial BX500 SATA SSD?Le processeur AMD Rysen 5 5500,J'ai ajouter une Ram 8go,Et j'ai gardé la carte graphique Geforce GT 710 1go.J'ai mis le p ...
Réponses: 22

Message [Réglé] les onglets dans Widgets ont disparues
Salut tout le mondeCela fait deux jours, suite à une erreur de pilote pour ma carte mère, j'ai en extrémité faire réparer Windows, de plus j'ai perdu toutes mes restaurations antérieures et je galère, car tous mes onglets dans Widgets ont disparu.à la place, j'ai une fenêtre grise? J'ai essayé c ...
Réponses: 22

Message [Réglé] Problème sur écran neuf
Bonjour,j'ai encore un souci suite au sujet de mon écran ICI. Etant donné qu'il est noté réglé, peut-être qu'il n'est plus trop "visible".Mon ancien écran ayant rendu l'âme après 17 ans, j'ai acheté un écran Acer 24 pouces cba242yabir trouvé en solde à 109? chez Leclerc. Je le trouve franc ...
Réponses: 14

Message [Réglé] transfert données
Bonjour,Sur mon pc de bureau j'ai un DDR avec windows10 et tout mes documents et photos etc..comment je fait pour tout envoyer sur un autre DDR qui se trouve aussi dans la tour.Merci
Réponses: 48

Message [Réglé] Installation linux
Bonjour,Je tien tout d'abord à m'excusez si je suis pas dans la bonne section .J'ai donc un soucis sur un vieux pc portable HP ou j'arrive à installer windows 7 mais pas d'autre système d'exploitation , j'ai essayer pop os , anduinos et debian mais à chaque fois il me redirige sur un écrans de diagn ...
Réponses: 6


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 6 invités


.: Nous contacter :: Flux RSS :: Données personnelles :.