begin process at 2010 02 10 04:02:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Base de données

 > 

Autre

 > 

formatage d'un fichier TXT.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

formatage d'un fichier TXT.

jeudi 19 juin 2008 à 14:38:20 | formatage d'un fichier TXT.

deis78

Bonjour à tous,

Je dois constituer à partir de ACCESS un fichier txt avec un formatage bien précis quant à la longueur et la position des différents champs.
Dans la construction de mon fichier, je n'arrive pas à considérer une zone à blanc enfin de champs comme étant un espace.

Prenons un exemple :

Soient un champs NOM (taille max 10 caracteres) et un champs PRENOM (taille max 10 caracteres) .
Si la saisie dans la table est DUPONT et Marcel le résultat de la requête [NOM]&[PRENOM] donne : DUPONTMarcel.

Je souhaiterai obtenir le résultat DUPONT    Marcel (l'espace doit correspondre à 10 caractères - les 6 du nom soit 4 caractères).En d'autres termes le nombre d'espaces est variable en fonction du nombre de caractères du nom.

Avez vous une idée sur la marche à suivre.

Merci pour votre collaboration.

Sand

jeudi 19 juin 2008 à 15:29:44 | Re : formatage d'un fichier TXT.

HCJarod

quelles fonctions utilise tu pour écrire dans ton fichier txt?

Chaque problème a sa solution. S'il n'y a pas de solution c'est qu'il n'y a pas de problème.
a+
jeudi 19 juin 2008 à 18:21:44 | Re : formatage d'un fichier TXT.

jfrancois

Bonjour,

Avec printf() on peut faire beaucoup au niveau formatage !
Petit exemple avec des sprintf() pour formater un buffer :

#include <stdio.h>

int main(int argc,char** argv)
{
   char  szBuffer[256];
   char* szNom    = "DUPONT";
   char* szPrenom = "Jean-Christophe";

   // --- Les 2 champs font 10 caractères et sont cadrés à gauche (-)
   // --- mais il peut y avoir dépassement de la longueur demandée
   sprintf(szBuffer,"%-10s%-10s",szNom,szPrenom);
   printf("[%s]\n",szBuffer);

   // --- Les 2 champs font 10 caractères et sont cadrés à gauche (-)
   // --- mais la longueur demandée est préservée (.10)

   sprintf(szBuffer,"%-10.10s%-10.10s",szNom,szPrenom);
   printf("[%s]\n",szBuffer);

   // --- La même chose mais avec la longueur paramétrable
   int iLongueur = 10;
   sprintf(szBuffer,"%-*.*s%-*.*s"
          ,iLongueur,iLongueur,szNom
          ,iLongueur,iLongueur,szPrenom);
   printf("[%s]\n",szBuffer);
   return 0;
}

Ce qui donne :

[12345678901234567890]
[DUPONT    Jean-Christophe]
[DUPONT    Jean-Chris]
[DUPONT    Jean-Chris]

Jean-François

jeudi 19 juin 2008 à 22:24:02 | Re : formatage d'un fichier TXT.

BruNews

Administrateur CodeS-SourceS

requête [NOM]&[PRENOM] donne : DUPONTMarcel

mauvaise idée une telle requête qui retourne en 1 champ unique, il te sera impossible de séparer les 2 termes.


char buf[24], *c, *d, a;
int i;

c = nom;
d = buf;
i = 0;
while(a = *c++) {
  *d++ = a;
  if(++i == 10) break;
}
while(i < 10) {*d++ = 32; i++;}
c = prenom;
i = 0;
while(a = *c++) {
  *d++ = a;
  if(++i == 10) break;
}
while(i < 10) {*d++ = 32; i++;}
*d = 0;


ciao...
BruNews, MVP VC++



Cette discussion est classée dans : fichier, txt, champs, caractères, formatage


Répondre à ce message

Sujets en rapport avec ce message

traitement d'un fichier txt [ par sylvain ] Bonjour,Je doit effectuer un traitement sur un fichier txt.Je reçoit un fichier txt sous cette forme :// début fichierdébut annonce..........@ fin ann VNEZ TOUS VOIR SA !! [ par Mickylord ] regardez , je ne sais pas comment faire pour ecrire une valeur numerique dans un fichier .txt . Comment je fait ???:void EcrireDisque (void) //SA Renommer un fichier [ par mindark ] Bonjour, j'essaie tout betement de renommer un fichier a l'aide des api, mais ca ne marche pas !Je veux renommer "kk.txt" en "qq.txt"String ancien="C: Enregistrer en HEXA un texte avec gcc !! [ par UncleShu ] /* * Ce programme affiche le fichier en HEXADECIMAL et se copie lui-même avec * une autre exetenstion (.txt). Moi je voudrais qui affiche le fichier * prb de récupération [ par benb78 ] bonjour à tous j'ai un problème et j'éspère que vous allez pouvoir m'aider, alors voila:J'aimerai pouvoir faire un listing (dans un fichier) de toutes Afficher un fichier txt inclus dans les ressources dans une editBox. [ par TheMaster ] Bonjour,Aidez moi s'il vous plait!J'aimerais afficher un fichier texte, qui est inclus dans mes ressources (VC++6.0), dans une edit Box.Je n'arrive pa lecture dans un fichier TXT en C# (caractere) [ par haribo ] je cherche les fonctions C plus plus qui permette de faire la lecture dans un fichier TXT des caracteres. en mode mode caractere par caractete.merci d ecriture ds un fichier txt [ par Leparasite ] Bonjour , bon je suis nouveau dans la programation , alors j'essai de faire des petit truc assez simple pour commencer et là j'ai un petit prob .bon j recuperation de doner ds un fichier txt [ par Leparasite ] Bonjours voila mon probleme :bon je cree un fichier txt a partir ds boutton ,le code :void CV1Dlg::OnOK() { // TODO: Add extra validation here UpdateD lecture d'un fichier txt-recuperationde donner-réecriture [ par Leparasite ] voila ce que je ve faire :sur mon dique dure c:\ j'ai un fichier TXT .je veu que mon programe lise le contenu de ce fichier et le réecrive sur le d: d


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales