diff --git a/downloadhelper/fileutil.go b/downloadhelper/fileutil.go index a62026a2c15cd87931d932df97874ff1d54ffcfb..bc64a18559382bd1bcbe6c0798c91cbf63b13f62 100644 --- a/downloadhelper/fileutil.go +++ b/downloadhelper/fileutil.go @@ -61,13 +61,15 @@ func mergeFiles(filename string, count int) { fmt.Println("temp file name : " + tempFilename) fmt.Println("file name : " + filename) + file, err := os.OpenFile(DownloadLocation+"/"+tempFilename, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666) + if err != nil { + log.Fatal(err) + } + defer file.Close() + for i := 0; i < count; i++ { partFilename := DownloadLocation + "/temp/" + filename + "_" + strconv.Itoa(i) - file, err := os.OpenFile(DownloadLocation+"/"+tempFilename, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666) - if err != nil { - log.Fatal(err) - } - defer file.Close() + reader, err := ioutil.ReadFile(partFilename) reader = reader[16:] if err != nil { @@ -77,6 +79,7 @@ func mergeFiles(filename string, count int) { log.Fatal(err) } } + file.Close() os.Rename(DownloadLocation+"/"+tempFilename, DownloadLocation+"/"+filename) } func isDirEmpty(name string) (bool, error) {