Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : formatage d'un fichier TXT. [ Base de données / Autre ] (deis78)

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é 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...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.