2009-09-29 5 views
1

Nous utilisons actuellement SAS pour importer un fichier binaire et exécuter des requêtes sur ses données. Pour ce faire, nous utilisons les techniques présentées sur le SAS website.Écrire des fichiers binaires en utilisant SAS?

À titre d'exemple, voici comment on lit les données:

data work.binary_data; 
infile "&ifName" lrecl=8 recfm=f; 
input @1 a PIB1. 
     @2 b PIB1. 
     @3 c PIB1. 
     @4 d PIB1. 
     @5 e PIB1. 
     @6 f PIB1. 
     @7 g PIB1. 
     @8 h PIB1. 
run; 

Nous devons envoyer un ensemble de données à un client pour eux de manipuler SAS . Ensuite, ils vont le renvoyer, et j'ai besoin de revenir au format binaire requis par un programme interne. La taille de l'ensemble de données sera probablement supérieure à 10 Go, donc je ne suis pas sûr de convertir en un fichier texte, puis d'écrire en binaire à partir du fichier texte (en utilisant C++ ou autre)

Est-ce que quelqu'un sait comment utiliser SAS pour écrire dans un format binaire, c'est-à-dire le même format du fichier que nous avons lu à l'origine?

Répondre

6

Je n'ai plus accès à SAS pour tester, mais je crois que vous pouvez inverser juste au-dessus de votre logique:

data _null_; 
    set data; 
    file 'c:\fileout.dat'; 
    put @1 a PIB1. 
     @2 b PIB1. 
     @3 c PIB1. 
     @4 d PIB1. 
     @5 e PIB1. 
     @6 f PIB1. 
     @7 g PIB1. 
     @8 h PIB1. 
    ; 
run; 

Où PIB1 représente votre binary format.

+0

cela fonctionne. Merci! –

+0

@anon: si vous pouviez s'il vous plaît "accepter" la réponse (cliquez sur la coche), j'apprécierais les points de réputation. – Mark

Questions connexes