2009-08-06 15 views
5

Ich bin mit Coldfusion 8 so etwas wie dies zu tun:Coldfusion 8 immer .xls öffnet, wollen .XLSX

<cfheader name="content-disposition" value="attachment; filename=abc.xlsx"> 
<cfcontent type="application/msexcel"> 
<html> 

Aber ich bekomme eine Datei wie abc.xlsx.XLS.

Der Grund, warum ich versuche, eine XLSX zu bekommen, ist, weil manchmal die XLS Version so groß ist und Office 2007 bleibt stecken, es zu öffnen oder dauert zu lange.

Nur Workaround im Moment ist zu warten, öffnen Sie die XLS in Office 2007, speichern Sie als .XLSX und öffnen Sie es dann schneller.

Jede Hilfe wird geschätzt!

+0

Versuchen Sie, den Inhaltstyp in 'application/octet-stream' zu ändern. Wenn der Client nicht weiß, dass er ein Excel-Dokument erhält, versucht er möglicherweise nicht, die Erweiterung zu "reparieren". –

+0

Vielen Dank für Ihre schnelle Antwort! Ich habe es versucht, und das sind die Ergebnisse: "Excel kann nicht geöffnet werden die Datei 'abc.xlsx', weil das Dateiformat oder die Dateierweiterung nicht gültig ist Stellen Sie sicher, dass die Datei nicht beschädigt ist und dass die Dateierweiterung mit dem Format der Datei " " übereinstimmt. Ich kann es nicht öffnen (gleiche Nachricht) –

+0

Ich habe gerade abc als Alias ​​für MyPriceList verwendet, bitte ignorieren Sie die Diskrepanz –

Antwort

4

Ich würde vorschlagen, dass die langsame Öffnung ist, weil Sie die Daten in einem HTML-Format bereitstellen, nicht wegen der Erweiterung. Sie können dies testen, indem Sie die Datei direkt im Browser speichern, sie mit der Erweiterung xlsx umbenennen und öffnen.

Wenn Sie Daten in einem Excel-Format direkt speichern möchten, würde ich Ben Nadel POI CFC project überprüfen.

+0

Vielen Dank an alle. Außerdem wurden einige Ressourcen für die Verwendung von XML zum direkten Laden der Excel-Datei gefunden. –

+0

https://blogs.wharton.upenn.edu/brainstorm/2008/01/reading-and-writing-excel-file.html und http://www.bennadel.com/blog/461-Creating -Microsoft-Excel-Dokumente-Mit-ColdFusion-Und-XML.htm –

4

Ich glaube, dass der MIME-Typ für Excel 2007 .xlsx Dateien "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" ist. Ich habe einen Artikel über die Office Resource Kit Blog gefunden, der dies nach dem googeln ein wenig ruft.

+0

Vielen Dank für Ihre schnelle Antwort! versuchte ich es und das sind die Ergebnisse: Dies öffnet die Datei, aber langsam muss ich ein "Speichern unter" durchführen, da es keine Erweiterung hat. Sobald ich als xlsx speichern und öffnen Sie die gespeicherte Datei, es öffnet sich sehr schnell. (Das gleiche Problem wie beim Herunterladen einer .xls-Datei) –

+0

" Excel kann die Datei 'abc.xlsx' nicht öffnen, da das Dateiformat oder die Dateierweiterung nicht gültig ist. Stellen Sie sicher, dass die Datei nicht beschädigt ist und dass die Dateierweiterung dem Format der Datei entspricht ". Selbst wenn ich den Anhang nicht öffne, kann ich ihn nicht öffnen (gleiche Nachricht) –

+0

Ich habe gerade abc als Alias ​​für MyPriceList verwendet, bitte ignorieren Sie die Diskrepanz –