I would suggest following ways to perform export data from Oracle:
1> Use serveroutput settings and DBMS_OUTPUT.PUT_LINE
Disadvantage: Every line is buffered to a buffer. Minimum buffer is of 2000 bytes and maximum is of 1,000,000 bytes. Performance is screwed up and has limitation. Besides I think DBMS_OUTPUT.PUT_LINE should be used to find out logical errors, but if this is a temporary project, go for it. DBMS_OUTPUT is not designed to be a report writer. It is meant to be used for debugging. It is not really powerful enough for much more than this. The procedures in this package provide much the same functionality as the printf() function in C.
2> Use Select from sqlplus:
If you want to create a production job using select, seek some other profession or retire yourself from database field. Again if this is a temporary project, rather than spending your organizations’ valuable time in coding “C”, or sqlJ, go with this solution.
3> Best and simple way use Pro*C. U can manipulate, twist, grind do whatever you want to using "C".
4> Use SqlJ
There are many ways for doing this. It depends on to what level your supervisor is stupid/not-technical. Usually in a non-professional organization the supervisor would suggest you to do in a very simple way not really knowing the correct, appropriate ways of doing and ignoring the long-term consequences. If you work for a professional technical supervisor, he/she will advise any one of the above or may be some other ways that I haven’t listed above.
Hope this answers your question. Feel free to comment to my above discussion.