1

DisplayTag を使用して Excel ドキュメントをエクスポートします。デスクトップに .xls ファイルとして保存されます。Excel で開くと、次のエラーが表示されます。

「開こうとしているファイル 'filename.xls' は、ファイル拡張子で指定された形式とは異なります。ファイルを開く前に、ファイルが破損しておらず、信頼できるソースからのものであることを確認してください。」

「はい」をクリックすると、Excelで問題なく表示されます。これを Textpad で開くと、バイナリ ファイルであることがわかりますが、単に "." のように見えます。区切り文字列。

私が間違っていた可能性のあるアイデア、または次にこれをデバッグする方法はありますか?

編集: :

拡張子を .txt に変更すると、バイナリ ファイルではなくなります。これは単に、区切られた文字列のリストです。

4

3 に答える 3

3

Excel 2007 を使用していますか? 既知の問題のようです:

Excel 2007 にアップグレードした後、場合によっては、次のエラーが発生することがあります。ファイルを開く前に、ファイルが破損しておらず、信頼できるソースからのものであることを確認してください。今すぐファイルを開きますか?

このエラーは特に、XLS ファイル (Excel 2000-2003) を Excel 2007 で開こうとしているときに発生します。ほとんどの場合、問題は MIME タイプを定義して拡張子に関連付けることで解決できます。

...

ただし、解決策を探すのではなく、単に問題を解決したい場合は、次のキーをレジストリに挿入して通知を抑制します。

[HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Security] “ExtensionHardening”=dword:00000000

上記を実現するには、次の手順を実行します。

  1. レジストリを開きます (スタート -> ファイル名を指定して実行 -> regedit.exe)。
  2. HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\OFFICE\12.0\EXCEL\SECURITYに移動し ます。
  3. 右側のウィンドウで右クリックし、[新規] -> [ DWORD ] を選択します。
  4. 名前として「ExtensionHardening」と入力します (引用符なし)。
  5. データの値が「<strong>0」</li> であることを確認します
于 2010-03-02T20:47:36.320 に答える
0

Excel のデフォルトのエクスポート クラスは CSV クラスに設定されていましたが、.xls 拡張子が付けられていました。ここでは、次のような displaytag.properties の変更が重要でした。

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
于 2010-03-08T20:53:35.827 に答える
0

プロパティ ファイルに以下の行を追加する必要があります。

export.excel.class=org.displaytag.export.excel.DefaultHssfExportView
export.pdf.class=org.displaytag.export.DefaultPdfExportView

ただし、これは現在のページ レコードのみを出力し、完全なリストは出力しません。

于 2015-09-28T07:32:47.450 に答える