I have an arduino logger that logs data to an SD card. If I used my iPhone as a wifi hotspot could I use a wifi shield on the Arduino to download the data on the SD card to my iPhone or iPad (or android equivalent)? Seems like Bluetooth is not the best for large data files (i.e. .csv files with lots of data). Alternatively, has anyone had success using BLE for this?
Yes you can do this - I do it successfully with my Android phone. Be aware though that this just gets you onto a TCP/IP based network. You then need something running at either end to send and receive that data that you want. The most readily available Arduino examples are doing this over HTTP, where your Arduino can either be the client or the server.
I haven't tried this with large payloads like a file, but it is supported by HTTP so it should be possible from the Arduino. There's an example here of the HTTP request for a file upload. Alternately, you could serve the file up from the Arduino as the response to a HTTP GET request.
A file upload of a large file may tie up you Arduino for a period of time, diverting it from whatever it is that you are logging.