Displaytag exportiert CSV in eine .xls-Datei
-
23-09-2019 - |
Frage
ich ein Excel-Dokument mit DisplayTag exportieren. Es spart als .xls-Datei auf meinem Desktop. Wenn ich öffne es mit Excel, diese Fehler angezeigt:
„Die Datei, die Sie versuchen, zu öffnen,‚filename.xls‘, ist in einem anderen Format als durch die Dateierweiterung angegeben. Stellen Sie sicher, dass die Datei nicht beschädigt ist und aus einer vertrauenswürdigen Quelle, bevor Sie die Datei zu öffnen.“
Wenn ich auf „Ja“ klicken, zeigt es ganz gut in Excel. Wenn ich das mit Textpad öffnen, sehe ich, dass es sich um eine Binärdatei, aber es scheint nur zu sein „“ begrenzt Saiten.
Alle Ideen, was ich falsch gemacht haben könnte, oder wie nächstes dies zu debuggen?
edit: :
Wenn ich die Erweiterung TXT ändern, ist es nicht eine Binärdatei; es ist einfach eine Liste von begrenzten Zeichenfolgen.
Lösung 2
Die Standard-Export-Klasse für Excel wurde in der CSV-Klasse festgelegt, aber ihm die .xls-Erweiterung geben. Ändern displaytag.properties wurde hier der Schlüssel, so etwas wie:
export.types=csv excel xml rtf pdf
export.excel=true
export.xml=true
export.csv=true
export.rtf=false
export.pdf=false
export.excel.class=org.displaytag.export.excel.DefaultHssfExportView
export.pdf.class=org.displaytag.export.DefaultPdfExportView
export.rtf.class=org.displaytag.export.DefaultRtfExportView
export.excel.filename=data.xls
export.pdf.filename=data.pdf
export.xml.filename=data.xml
export.csv.filename=data.csv
export.rtf.filename=data.rtf
Andere Tipps
Sind Sie auf Excel 2007? Scheint ein Problem bekannt:
In einigen Fällen nach Excel Upgrade 2007 wird möglicherweise die folgende Fehlermeldung erhalten: Die Datei, die Sie versuchen, zu öffnen .xlsx in einem anderen Format als durch die Dateierweiterung angegeben. verify die Datei nicht beschädigt ist und ist aus vertrauenswürdiger Quelle vor dem Öffnen die Datei. Wollen Sie die Datei öffnen jetzt?
Diese Fehler tritt insbesondere dann auf, wenn Sie versuchen, eine XLS-Datei zu öffnen (Excel 2000-2003) mit Excel 2007. In den meisten Fällen kann das Problem durch die Definition von MIME-Typen und mit Erweiterungen Zuordnung gelöst werden.
...
Allerdings, wenn Sie nicht wollen, eine Lösung suchen, wollen aber nur das Problem lösen, Einsatz dieser Schlüssel in Ihrer Registrierung die Meldung zu unterdrücken:
[HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ 12.0 \ Excel \ Security] „ExtensionHardening“ = dword: 00000000
Sie können das erreichen oben durch die folgenden Aktionen ausführen:
- Öffnen Sie Ihre Registry (Start -> Ausführen -> regedit.exe)
- Navigieren Sie zu HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Office \ 12.0 \ Excel \ SECURITY
- Rechtsklick im rechten Fenster und Wählen Sie Neu -> DWORD
- Geben Sie „ ExtensionHardening “, wie der Name (ohne die Anführungszeichen)
- Stellen Sie sicher, dass die Daten den Wert „ 0 "
Sie müssen die folgenden Zeilen in Ihren Eigenschaften Datei hinzuzufügen:
export.excel.class=org.displaytag.export.excel.DefaultHssfExportView
export.pdf.class=org.displaytag.export.DefaultPdfExportView
Aber diese gibt die aktuelle Seite Datensatz nur und nicht die komplette Liste.