2009-09-05 19 views
42

La mia applicazione consente all'utente di scaricare i propri dati come file csv. Dovrebbero aprirsi in applicazioni per fogli di calcolo. Su un sistema Linux, mi viene richiesto correttamente di aprire con OpenOffice. Ma alcuni dei miei utenti si lamentano del fatto che quando scaricano il file, non si aprono automaticamente excel, ma chiede loro di scegliere l'applicazione. Quando scaricano un CSV da un altro sito, questo viene aperto correttamente in Excel.Cosa impostare come mimetype per i file csv da aprire nelle applicazioni di foglio di calcolo

io pongo:
mimetype: text/csv
content_disposition: attacco; nomefile.csv

risposta

61

Prova questa:

Content-Type: text/csv; name="filename.csv" 
Content-Disposition: attachment; filename="filename.csv" 

In Windows browsers il tipo MIME viene ignorato dopo che il file viene scaricato e l'estensione solo di nome di file viene utilizzato per determinare l'applicazione corrispondente.

Inoltre, rendere il file .CSV aperto in Excel correttamente è difficile, perché il separatore predefinito viene ricavato dalle impostazioni internazionali sulla macchina su cui è aperto il CSV. Inoltre, la codifica non è determinata dal contenuto del file o dal tipo MIME, quindi è difficile lavorare con qualsiasi carattere non ASCII.

+0

La scelta del separatore (, o;) può dipendere dalle impostazioni internazionali. Non ho mai avuto problemi nell'aprire un file separato da virgola. – pavium

+0

@pavium: hai ragione, molto probabilmente è il "List separator" in Impostazioni internazionali .. –

+13

l'impostazione del parametro name su Content-Type è IMHO inutile ... –

Problemi correlati