Я привязываю для преобразования текстового файла с разделителями-запятыми в файл с разделителями каналов, но мое имя входного файла (файл с разделителями-запятыми) является переменной (flname1). Я использую код, предложенный элементом stackoverflow. Код работает отлично, пока я указать имя файла в входной_файл заявление, но я не знаю, как указать имя файла, с переменнойЗадание имени файла как переменной в инструкции infile
data _null_;
enddate=date();
flname1=compress("d:\temp\wq_" || year(enddate) || put(month(enddate),z2.) || ".txt");
length x1-x6 $200;
infile 'flname1' dsd dlm=',' truncover;
file 'C:\temp\pipe.txt' dsd dlm='|';
input x1-x6;
put x1-x6;
run;
Я новичок в SAS и любая помощь будет принята с благодарностью , Спасибо!
Вы пробовали опцию 'filevar' в инструкции infile? https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000146932.htm – Reeza
Немного оффтопик, но чтобы сделать вашу жизнь проще, вы также должны изучить использование ' cat() 'для выполнения конкатенаций. Есть несколько из них - 'catt() cats() cat() catx()'. Они обеспечивают некоторые улучшения качества жизни, такие как преобразование типов преобразования между цифровыми и символами, обрезка и добавление разделителей, чтобы назвать несколько. Использование двухтрубной нотации '||' теперь устарело, но распространено многими старыми документами и учебными материалами. Это также устранит необходимость в этом 'compress()' statement. –
Что такое создание файла с разделителями каналов? –