declareUnless you are inserting/updating the data you are holding in the array into a database table I don't think there is much peformance gain in using bulk-collect in conjunction with writing a file. Bulk processing will increase performance by minimizing context switches from the SQL to the PL/SQL engine, nothing more, nothing less.
type arr is table of emp%rowtype ;
select * bulk collect in to lv_arr from emp;
/*written code here to process the data and write in to file*/