> Можно как-то написать эту программу (вывести атрибуты), не обращаясь к каждому члену типа FileAttributes (ReadOnly,Hidden и т.д.)?
Что вы имеете в виду "не обращаясь"? FileAttributes это флаговое поле, вы берете конкретное его значение и or-ите с конкретными значениями перечисления, если операция или дает true - делаете соответствующее действие (выводите что-то на экран). Вам же нужно что-то вменяемое вывести ("Скрытый, Системный" или "HS" например), поэтому это вам проверять и решать, что делать.