From 3f1a58f2aa8a686e71d366fb3d3a97aa2d76c726 Mon Sep 17 00:00:00 2001 From: TaurusXin Date: Sun, 15 Sep 2024 21:04:52 +0800 Subject: [PATCH] feat: allow change save dir --- main.go | 2 +- ncmcrypt/ncmcrypt.go | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/main.go b/main.go index 8ff9d83..6a314d0 100644 --- a/main.go +++ b/main.go @@ -16,7 +16,7 @@ func processFile(filePath string) error { utils.ErrorPrintfln("Reading '%s' failed: '%s'", filePath, err.Error()) return err } - dump, err := currentFile.Dump() + dump, err := currentFile.Dump(filepath.Dir(filePath)) if err != nil { utils.ErrorPrintfln("Processing '%s' failed: '%s'", filePath, err.Error()) return err diff --git a/ncmcrypt/ncmcrypt.go b/ncmcrypt/ncmcrypt.go index e10587a..7a387ff 100644 --- a/ncmcrypt/ncmcrypt.go +++ b/ncmcrypt/ncmcrypt.go @@ -12,6 +12,7 @@ import ( "ncmdump/utils" "net/http" "os" + "path/filepath" ) type NcmFormat = string @@ -110,7 +111,7 @@ func (ncm *NeteaseCloudMusic) mimeType() string { return "image/jpeg" } -func (ncm *NeteaseCloudMusic) Dump() (bool, error) { +func (ncm *NeteaseCloudMusic) Dump(targetDir string) (bool, error) { ncm.mDumpFilePath = ncm.mFilePath var outputStream *os.File @@ -137,6 +138,9 @@ func (ncm *NeteaseCloudMusic) Dump() (bool, error) { ncm.mFormat = Flac ncm.mDumpFilePath = utils.ReplaceExtension(ncm.mDumpFilePath, ".flac") } + if targetDir != "" { // change save dir + ncm.mDumpFilePath = filepath.Join(targetDir, filepath.Base(ncm.mDumpFilePath)) + } findFormatFlag = true output, err := os.Create(ncm.mDumpFilePath)