I more or less use jacobsj's approach (I have a tomcat/java server).
I did investigate ways of doing this using the File API, but I gave up because IE8 doesn't support it if I recall correctly. I'm not sure if it is possible or not though.
How about coverting the features to JSON and convert the JSON to csv directly on the client?
http://stackoverflow.com/questions/4130849/convert-json-format-to-csv-format-for-ms-excel