IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAS Base Discussion :

lecture d'un fichier avec des caractères spéciaux


Sujet :

SAS Base

  1. #1
    Invité
    Invité(e)
    Par défaut lecture d'un fichier avec des caractères spéciaux
    Bonjour tout le monde;

    J’essaie de lire un fichier séquentiel avec des caractère que je ne comprends pas du tout ex: NULNULNULNUL ,
    je me demande si ce n'est pas du à l'encode.
    Quand j'essaie de copier la zone NULNULNULNUL du fichier d'origine dans un autre fichier il copie rien ( vide).

    Quelqu’un a une idée SVP?
    j'ai utilisé l'informat TRAILSGN et sa n'a pas marché.

    Merci à tous

  2. #2
    Membre chevronné
    Homme Profil pro
    Biostatisticien
    Inscrit en
    Juin 2009
    Messages
    1 206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Biostatisticien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 206
    Points : 1 868
    Points
    1 868
    Par défaut
    pas sur de bien comprendre... tu lis un fichier sas dans sas, c'est ca (pas d'importation)?pourquoi veux tu copier l'observation?

    il est possible que ce soit une donnée manquante codée comme tel... tu peux toujours essayer d'appliquer l'option nofmterr pour voir ce que ca donne..

  3. #3
    Membre éclairé Avatar de Filippo
    Homme Profil pro
    Statisticien
    Inscrit en
    Mai 2004
    Messages
    864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Mai 2004
    Messages : 864
    Points : 881
    Points
    881
    Par défaut
    Bonjour,
    Quel code SAS utilises-tu pour lire le fichier ?
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  4. #4
    Membre expérimenté
    Avatar de MEGAMIND2
    Homme Profil pro
    Paris
    Inscrit en
    Janvier 2011
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paris

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 029
    Points : 1 489
    Points
    1 489
    Par défaut
    Peut être que la solution à ton problème est là:

    http://thesasreference.wordpress.com/2009/02/23/caracteres_ascii/

  5. #5
    Invité
    Invité(e)
    Par défaut
    Merci à tous ;

    @Manoutz: j'essaie de copier le contenu du fichier texte dans un autre pour voir ce que sa donne, à priori les caractère spéciaux c'est t'a dire la zone avec les NULNULNULNUL ne peut être copier et elle donne des blancs.
    au fait à l'origine le fichier était en cobol qu'un de mes collègue a traduit pour qu'il soit lu sous unix et comme il est en congés je suis coincée.
    j'ai tenté avec l’option nofmtrr et sa me donne des caractère bizarroïdes.

    @MEGAMIND2 merci pour le lien.

    @Filippo : j'essaie de lire la zone des NULNULNULNUL avec l'informat trailsgn,et dans la log j'ai des erreurs de format.

  6. #6
    Membre chevronné
    Homme Profil pro
    Biostatisticien
    Inscrit en
    Juin 2009
    Messages
    1 206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Biostatisticien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 206
    Points : 1 868
    Points
    1 868
    Par défaut
    il s'agit d'importation alors (?). Si c'est bien ca essaye la commande infile dans une data step.

  7. #7
    Membre éclairé Avatar de Filippo
    Homme Profil pro
    Statisticien
    Inscrit en
    Mai 2004
    Messages
    864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Mai 2004
    Messages : 864
    Points : 881
    Points
    881
    Par défaut
    Est-ce que tu peux nous montrer le code que tu exécutes et ce que ça produit dans la log ?
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  8. #8
    Membre expérimenté
    Avatar de MEGAMIND2
    Homme Profil pro
    Paris
    Inscrit en
    Janvier 2011
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paris

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 029
    Points : 1 489
    Points
    1 489
    Par défaut
    J'ai déjà eu ce problème lors de la conversion des fichiers plats (issus de cobol)en table SAS ( c'est des caractères héxadécimals). J'en reviens au site que je t'avais conséillé.
    Essaie ça:

    VAR = COMPRESS(VAR,'25'x,' ');
    ou VAR = COMPRESS(VAR,'00'x ,' ');

  9. #9
    Invité
    Invité(e)
    Par défaut
    merci encore ;
    ci-joint la partie qui me pose problème.

    pour le programme de lecture c'est une simple étape data :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    filename fic "~/voitures.txt";
    data tab;
    INFILE fic  lrecl=444  ;
     
       input
     
                    @1    var1                  1.
                    @2    var2                  5.
                   .
    			   .
    			   .
     
                    @358   Var3                  TRAILSGN11.;/*sa coince ici car c'est ici ou y a la zone que j'ai mis en pièce jointe*/
     
    	run;
    Images attachées Images attachées  

  10. #10
    Membre expérimenté
    Avatar de MEGAMIND2
    Homme Profil pro
    Paris
    Inscrit en
    Janvier 2011
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paris

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 029
    Points : 1 489
    Points
    1 489
    Par défaut
    Bonjour,
    Tu peux envoyer 5 lignes de ton fichier txt?

  11. #11
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par MEGAMIND2 Voir le message
    Bonjour,
    Tu peux envoyer 5 lignes de ton fichier txt?
    c'est fait mais en format image.

  12. #12
    Membre expérimenté
    Avatar de MEGAMIND2
    Homme Profil pro
    Paris
    Inscrit en
    Janvier 2011
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paris

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 029
    Points : 1 489
    Points
    1 489
    Par défaut
    Citation Envoyé par la_debutante Voir le message
    c'est fait mais en format image.
    Je la voulais en txt...

  13. #13
    Membre chevronné
    Homme Profil pro
    Biostatisticien
    Inscrit en
    Juin 2009
    Messages
    1 206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Biostatisticien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 206
    Points : 1 868
    Points
    1 868
    Par défaut
    il a un look bizarre ton fichier texte.. As ton contrôlé qu'il contient bien les mêmes informations que dans le fichier sous cobol?

  14. #14
    Rédacteur

    Homme Profil pro
    SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Inscrit en
    Avril 2009
    Messages
    2 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2009
    Messages : 2 497
    Points : 6 064
    Points
    6 064
    Par défaut
    Il ne serait pas un peu en décimal packé ton fichier ?

    tu as tenté les informats S370FPDw ?
    N'oubliez pas de cliquer sur lorsque votre problème est réglé !

  15. #15
    Membre éclairé Avatar de Filippo
    Homme Profil pro
    Statisticien
    Inscrit en
    Mai 2004
    Messages
    864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Mai 2004
    Messages : 864
    Points : 881
    Points
    881
    Par défaut
    Disons que si tu nous envoies le fichier des données (ou un échantillon si c'est trop gros) au format texte on pourra faire tourner le programme dans les mêmes conditions que toi et voir ce qui est produit dans la log.
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  16. #16
    Membre éprouvé
    Avatar de steelspirit
    Homme Profil pro
    SAS discute
    Inscrit en
    Janvier 2008
    Messages
    472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SAS discute
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 472
    Points : 916
    Points
    916
    Par défaut
    Arf ! Comme le disais Megamind, ce fichier est de l'ASCII mais avec des caractères de contrôle.

    http://fr.wikipedia.org/wiki/America..._contr.C3.B4le

    Normal que quand on fait un copié collé dans un éditeur de texte on n'a rien ... ce qui est bizarre c'est qu'à part ces caractères y a pas grand chose d'autre ... ils sont où les données

    Mais tu veux en faire quoi de ce fichier ? l'importer tel quel ?
    Avant de poser votre question, n'oubliez pas :
    FAQ, SAS DOC et de ce forum

  17. #17
    Rédacteur

    Homme Profil pro
    SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Inscrit en
    Avril 2009
    Messages
    2 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2009
    Messages : 2 497
    Points : 6 064
    Points
    6 064
    Par défaut
    Il faut qu'il envoie un tar pour que nous retravaillons dans les mêmes conditions : sur unix.
    on ne voit rien mais nous n'avons que la fin de ligne. Et si c'est du packé... nous ne verrons jamais rien.
    N'oubliez pas de cliquer sur lorsque votre problème est réglé !

  18. #18
    Membre expérimenté
    Avatar de MEGAMIND2
    Homme Profil pro
    Paris
    Inscrit en
    Janvier 2011
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paris

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 029
    Points : 1 489
    Points
    1 489
    Par défaut
    Citation Envoyé par datametric Voir le message
    Il faut qu'il envoie un tar pour que nous retravaillons dans les mêmes conditions : sur unix.
    on ne voit rien mais nous n'avons que la fin de ligne. Et si c'est du packé... nous ne verrons jamais rien.
    Sur les gros systèmes type MVS, tu peux demander l'affichage des données sur l'éditeur en hexadécimal (par packet). Vu la copie qu'elle a posté, c'est bien le cas. Elle ne pourra donc pas lire ce fichier dans l'état vu qu'il n'y a aucune valeur à part des caractère spéciaux.

  19. #19
    Invité
    Invité(e)
    Par défaut
    bonjour;
    merci à tous.
    En fait à l'origine le fichier était sous format cobol avec des zone packées.
    aujorud'hui il est livré sous Unix.

    ci-joint un extrait de mon fichier , et ce qui me pose problème c'est les zones avec les caractères NULLNULLNULL


    merci à tous.
    Fichiers attachés Fichiers attachés

  20. #20
    Membre chevronné
    Homme Profil pro
    Biostatisticien
    Inscrit en
    Juin 2009
    Messages
    1 206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Biostatisticien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 206
    Points : 1 868
    Points
    1 868
    Par défaut
    Il n'y a pas de zone avec NULlNULLNULL à l'ouverture de ton fichier sur mon poste (bloc note sous windows). Par contre il y a des caractères "spéciaux" qui ne passent d'ailleurs pas sur l'éditeur du forum..

Discussions similaires

  1. Lecture d'un fichier avec des caractères spéciaux
    Par pyrrhus33 dans le forum C++
    Réponses: 4
    Dernier message: 27/10/2014, 14h10
  2. Lecture de données avec des caractères spéciaux
    Par Softdaemon dans le forum Administration
    Réponses: 0
    Dernier message: 08/07/2011, 10h27
  3. Noms de fichiers avec des caractères spéciaux
    Par weabow dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 24/11/2010, 15h51
  4. Copie d'un fichier avec des caractères spéciaux
    Par totofe dans le forum Scripts/Batch
    Réponses: 5
    Dernier message: 15/09/2010, 12h28
  5. Réponses: 4
    Dernier message: 04/06/2007, 15h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo