浏览代码

优化基础库的一些错误处理

songzhibin97 4 年之前
父节点
当前提交
e1dd5eb58e
共有 2 个文件被更改,包括 13 次插入6 次删除
  1. 6 3
      server/service/exa_simple_uploader.go
  2. 7 3
      server/utils/breakpoint_continue.go

+ 6 - 3
server/service/exa_simple_uploader.go

@@ -36,7 +36,12 @@ func MergeFileMd5(md5 string, fileName string) (err error) {
 	rd, err := ioutil.ReadDir(dir)
 	_ = os.MkdirAll(finishDir, os.ModePerm)
 	//创建目标文件
-	fd, _ := os.OpenFile(finishDir+fileName, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0644)
+	fd, err := os.OpenFile(finishDir+fileName, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0644)
+	if err != nil {
+		return
+	}
+	//关闭文件
+	defer fd.Close()
 	//将切片文件按照顺序写入
 	for k := range rd {
 		content, _ := ioutil.ReadFile(dir + "/" + fileName + strconv.Itoa(k+1))
@@ -45,8 +50,6 @@ func MergeFileMd5(md5 string, fileName string) (err error) {
 			_ = os.Remove(finishDir + fileName)
 		}
 	}
-	//关闭文件
-	defer fd.Close()
 
 	if err != nil {
 		return err

+ 7 - 3
server/utils/breakpoint_continue.go

@@ -37,7 +37,6 @@ func CheckMd5(content []byte, chunkMd5 string) (CanUpload bool) {
 func makeFileContent(content []byte, fileName string, FileDir string, contentNumber int) (error, string) {
 	path := FileDir + fileName + "_" + strconv.Itoa(contentNumber)
 	f, err := os.Create(path)
-	defer f.Close()
 	if err != nil {
 		return err, path
 	} else {
@@ -46,6 +45,7 @@ func makeFileContent(content []byte, fileName string, FileDir string, contentNum
 			return err, path
 		}
 	}
+	defer f.Close()
 	return nil, path
 }
 
@@ -55,7 +55,11 @@ func MakeFile(fileName string, FileMd5 string) (error, string) {
 		return err, finishDir + fileName
 	}
 	_ = os.MkdirAll(finishDir, os.ModePerm)
-	fd, _ := os.OpenFile(finishDir+fileName, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0644)
+	fd, err := os.OpenFile(finishDir+fileName, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0644)
+	if err != nil {
+		return err, finishDir + fileName
+	}
+	defer fd.Close()
 	for k := range rd {
 		content, _ := ioutil.ReadFile(breakpointDir + FileMd5 + "/" + fileName + "_" + strconv.Itoa(k))
 		_, err = fd.Write(content)
@@ -64,7 +68,7 @@ func MakeFile(fileName string, FileMd5 string) (error, string) {
 			return err, finishDir + fileName
 		}
 	}
-	defer fd.Close()
+
 	return nil, finishDir + fileName
 }