Sqlldr should work just fine for this, you didn't say what version you are running but I just tried this on a 9.0.1 box.

Here's an example control file that will load into a table with a column of varchar2(4000).

load data
infile 'a.csv'
badfile 'a.bad'
discardfile 'a.dsc'
replace
into table a
fields terminated by "," optionally enclosed by '"'
(x,
y char(4000)
)


All the details and lots of examples of using sqlldr are in the
utilities documentation.

--
Paul