2017-06-01 43 views
0

我嘗試@ tototoshi的scala-csv庫及其非常簡單,看起來像這樣:創建文件後,如何確保將其下載到默認的下載文件夾?

def downloadFile = Action { 
    val f = new File("out.csv") 
    val writer = CSVWriter.open(f) 
    writer.writeAll(List(List("a", "b", "c"), List("d", "e", "f"))) 
    writer.close() 
    Ok.sendFile(f, inline = false, _ => f.getName) 
    } 

,但現在我的文件越來越下載到我的項目目錄:

enter image description here

和我希望它被下載到任何使用此功能的用戶的默認下載文件夾中,我該怎麼做?

回答

1

文件越來越下載到我的項目目錄

這有什麼好做的Scala或者使用Scala,CSV,它只是new File(String)構造的工作方式:如果你通過像"out.csv"相對路徑(或更一般地說,"directory/directory/..."),它使用在IDEA中運行時由「運行配置」設置的工作目錄。改爲使用絕對路徑(Windows上的"C:/directory/..."或Linux/Mac上的"/directory/...")。

到默認的下載文件夾

沒有找到Java默認的下載文件夾沒有內置的方式,這取決於操作系統。有關Windows的答案,請參閱General Path To Downloads Folder

0

您需要自己解析下載文件夾。根據路徑,圖書館會將CSV寫入該路徑。它將包含其他CSV設備,但絕對不是路徑解析代碼。

據我所知,沒有一個環境變量將指向默認的「下載」目錄...

如果你在* nix,一般下載是~/Downloads,所以你路徑將是"~/Downloads".replace("~", System.getProperty("user.home"))。這可以傳遞給java.io.File的構造函數。

我不知道Windows的文件系統是否足以告訴你這是否也適用於Windows,但cursory search也表明它也可以工作。

相關問題