0
我試圖將文件保存到我的桌面,但是每當我運行我的腳本它保存在文件中的任何目錄中去腳本位於英寸golang保存文件到桌面
這是代碼塊我「M與
func (d *downloader) downloadToFile(key string) {
// Create the directories in the path
// desktop path
desktop := "Desktop/" + d.dir
file := filepath.Join(desktop, key)
if err := os.MkdirAll(filepath.Dir(file), 0775); err != nil {
panic(err)
}
// Setup the local file
fd, err := os.Create(file)
if err != nil {
panic(err)
}
defer fd.Close()
// Download the file using the AWS SDK
fmt.Printf("Downloading s3://%s/%s to %s...\n", d.bucket, key, file)
params := &s3.GetObjectInput{Bucket: &d.bucket, Key: &key}
d.Download(fd, params)
_, e := d.Download(fd, params)
if e != nil {
panic(e)
}
}
我試過的路徑工作
desktop := "Desktop/" + d.dir
desktop := "/Desktop/" + d.dir
desktop := "Desktop/" + d.dir
desktop := "~/Desktop/ + d.dir
我似乎無法得到的文件保存到桌面,例如,當我試圖
desktop := "~/Desktop/ + d.dir
目錄~
創建,桌面內的~
創建,桌面內的d.dir創建,並在那裏的所有文件。無論我在哪裏運行腳本,我都想運行該腳本。我想要d.dir文件夾的內容,以便在桌面上創建。
真棒謝謝你。我仍然在學習核心庫。我一直在使用python。 – reticentroot
@msanti,而不是在未來的Windows版本中,它會決定將「桌面」重命名爲其他內容。真正的方法是使用Windows shell集成API的「特殊文件夾」工具來獲取桌面文件夾在您的程序運行的Windows上的位置。不幸的是,這需要C,Windows API中的某些技能,並從Go中調用它(後者很簡單)。我會在[go-nuts郵件列表](https://groups.google.com/group/golang-nuts)上提問。 – kostix
哦,沒關係。我是一個Linux,Unix用戶,這是該腳本將保持大聲笑 – reticentroot