mirror of
https://github.com/Xpl0itU/WiiUDownloader.git
synced 2025-06-05 09:23:44 -04:00
Normalize folder names
This commit is contained in:
parent
dc785dc09f
commit
ab32b122ea
2 changed files with 33 additions and 1 deletions
|
@ -612,7 +612,7 @@ func (mw *MainWindow) onDownloadQueueClicked(selectedPath string) error {
|
|||
defer wg.Done()
|
||||
|
||||
tidStr := fmt.Sprintf("%016x", title.TitleID)
|
||||
titlePath := fmt.Sprintf("%s/%s [%s] [%s]", selectedPath, title.Name, wiiudownloader.GetFormattedKind(title.TitleID), tidStr)
|
||||
titlePath := fmt.Sprintf("%s/%s [%s] [%s]", selectedPath, normalizeFilename(title.Name), wiiudownloader.GetFormattedKind(title.TitleID), tidStr)
|
||||
if err := wiiudownloader.DownloadTitle(tidStr, titlePath, mw.decryptContents, progressWindow, mw.getDeleteEncryptedContents(), mw.logger); err != nil {
|
||||
queueCancelled = true
|
||||
errorHappened = true
|
||||
|
|
32
cmd/WiiUDownloader/utils.go
Normal file
32
cmd/WiiUDownloader/utils.go
Normal file
|
@ -0,0 +1,32 @@
|
|||
package main
|
||||
|
||||
import "strings"
|
||||
|
||||
func normalizeFilename(filename string) string {
|
||||
var out strings.Builder
|
||||
shouldAppend := true
|
||||
|
||||
for _, c := range filename {
|
||||
if c == '_' {
|
||||
if shouldAppend {
|
||||
out.WriteRune('_')
|
||||
shouldAppend = false
|
||||
}
|
||||
} else if c == ' ' {
|
||||
if shouldAppend {
|
||||
out.WriteRune(' ')
|
||||
shouldAppend = false
|
||||
}
|
||||
} else if (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') {
|
||||
out.WriteRune(c)
|
||||
shouldAppend = true
|
||||
}
|
||||
}
|
||||
|
||||
result := out.String()
|
||||
if len(result) > 0 && result[len(result)-1] == '_' {
|
||||
result = result[:len(result)-1]
|
||||
}
|
||||
|
||||
return result
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue