2016-11-11 173 views
0

我正在使用angularjs前端的Spring Jhipster java應用程序。 我的要求是導出CSV文件中的數據,然後將導出的文件下載到瀏覽器的下載路徑。如何在沒有servlet的下載路徑下從瀏覽器下載文件

我知道它可以使用servlet完成,但我們沒有使用servlet,那麼如果沒有使用核心java代碼的servlet,我該如何實現。

回答

0

我很困惑,如果你正在導出CSV文件,你有文件對象,那麼你可以很容易地將此​​文件中FileUtils.copyFile(source, dest);

private static void copyFileUsingChannel(File source, File dest) throws IOException { 
FileChannel sourceChannel = null; 
FileChannel destChannel = null; 
try { 
    sourceChannel = new FileInputStream(source).getChannel(); 
    destChannel = new FileOutputStream(dest).getChannel(); 
    destChannel.transferFrom(sourceChannel, 0, sourceChannel.size()); 
    }finally{ 
     sourceChannel.close(); 
     destChannel.close(); }} 

希望這是有幫助的複製。

+0

感謝Hiren,我不想複製,現在我正在本地系統的某個路徑創建csv文件。但是我想把這個路徑作爲下載文件夾,用戶在瀏覽器中點擊導出按鈕應該看到導出的文件正在下載。 –

+0

如果文件由JHipster應用程序提供,它將由servlet提供服務,即使它只是來自嵌入式tomcat的默認Servlet,它將從服務器目錄提供服務。否則,你可以從nginx服務它。 –