2013-07-22 65 views
0

這是我從wicket示例站點下載的鏈接。我想通過讓用戶選擇文件應該保存的目錄來改變它。任何方式來實現它?在此先感謝下載鏈接,可選擇保存文件的目錄apache wicket

 add(new DownloadLink("generate_report", new AbstractReadOnlyModel<File>() 
    { 
     private static final long serialVersionUID = 1L; 

     @Override 
     public File getObject() 
     { 
      File tempFile; 
      try 
      { 
       tempFile = File.createTempFile("wicket-examples-download-link--", ".tmp"); 

       InputStream data = new ByteArrayInputStream("some data".getBytes()); 
       Files.writeTo(tempFile, data); 

      } 
      catch (IOException e) 
      { 
       throw new RuntimeException(e); 
      } 

      return tempFile; 
     } 
    }).setCacheDuration(Duration.NONE).setDeleteAfterDownload(true)); 
+1

不,因爲文件在客戶端光盤上的位置是瀏覽器的作業,它將打開一個對話框詢問目的地或使用默認的下載文件夾。 – Nicktar

+0

如何「告訴」瀏覽器打開這個對話框?此功能將其保存在默認文件夾中:( – SSV

+0

用戶正在「告訴」瀏覽器通過右鍵單擊該鏈接並選擇aproriate選項來打開對話框(在不同的瀏覽器中標籤不同),否則用戶會「告訴」瀏覽器使用默認的下載目錄 – Nicktar

回答

-1

如果您預設路徑,然後用戶可以選擇他們想要使用的include_path功能使用哪一個;但是,用戶將無法創建自己的目錄/路徑。

編輯:無法將代碼放在該評論哈哈,但這裏是我要去的地方。

$path1=set_include_path('file\whateveryouwant'); 

然後你可以使用多條路徑,讓用戶從路徑選擇通過調用$ PATH1(至極將是你希望他們使用的路徑擴展)。 更多信息:http://php.net/manual/en/function.get-include-path.php

+0

,因此沒有選項可以在點擊時打開窗口並手動選擇目標文件夾? 我發現它用於上傳文件:http://www.wicket-library.com/wicket-examples/upload/single?0但我找不到下載的示例 – SSV

+0

您可以使用set_include_path設置您想要的路徑您的用戶可以選擇。然後,您可以使用get_include_path來檢索該設置路徑。 – Llama

+0

請注意,這是PHP而不是Java。 – Nicktar