0

ここでばかげた質問があります。vaadin を使用してアップロード ボタンを実装しています。ユーザーに圧縮ファイル (.zip、.rar ..) のみをアップロードしてもらいたいのですが、検索を行いましたが、何か役立つものが見つかりませんでした。ユーザーが選択したファイルをすでにアップロードしているため、これは良い解決策ではないことはわかっています。

@Override
public OutputStream receiveUpload(String filename, String mimeType) {
   // Create upload stream
        FileOutputStream fos = null; // Stream to write to
        String fileName ;
        String userHome = System.getProperty( "user.home" );
        try {
            // Open the file for writing.
            file = new File(userHome+"/kopiMap/runtime/uploads/report/" + filename);
            fileName= file.getName();
                //Here i will get file extension
            fos = new FileOutputStream(file);
        } catch (final java.io.FileNotFoundException e) {
            Notification.show(
                    "Could not open file<br/>", e.getMessage(),
                    Notification.TYPE_ERROR_MESSAGE);
            return null;
        }
        return fos; // Return the output stream to write to
    }

では、アップロードする前にそれを行う方法

4

2 に答える 2

2

mimeType を確認し、それが application/zip であるかどうかを確認できます

@Override
public OutputStream receiveUpload(String filename, String mimeType) {
   // Create upload stream
if(mimeType.equals("application/zip"))
//Here you can restrict
于 2013-06-26T11:22:03.160 に答える
1

これを追加すると機能します (すべて HTML 5 で行われ、ほとんどのブラウザー サポートが属性を受け入れるようになりました) - これは .csv ファイルの例です:

upload.setButtonCaption("Import");
JavaScript.getCurrent().execute("document.getElementsByClassName('gwt-FileUpload')[0].setAttribute('accept', '.csv')");
于 2016-04-25T11:55:40.037 に答える