To import the entire file at the same time, the only other option that I know of is ReadList. It can be persuaded to return the entire file as a single line as follows: 1 :
In[1]:= ReadList["ExampleData/source", Record, RecordSeparators -> {}]
Out[1]:= {"f[x] (: function f :)\r\ng[x] (: function g :)\r\n"}
(:\r \n , .) RecordSeparators. , , , , Import[ <file>, "Text"] . , Read[ <file>, String], , , Read ReadList, .