-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Closed
Labels
FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Description
What version of Go are you using (go version
)?
Current HEAD
$ go version go version devel +cd99385ff4 Sat Jan 23 12:38:15 2021 +0000 darwin/amd64
What did you do?
reader, _ := zip.OpenReader("test.zip")
root, _ := reader.Open(".")
entries, _ := root.(fs.ReadDirFile).ReadDir(0)
for _, entry := range entries {
fmt.Printf("%s: %T\n", entry.Name(), entry)
}
Results in:
folder: *zip.fileListEntry
folder: zip.headerFileInfo
I understand that you might want both results (s. #40354), so my question is:
Is there a good way to differentiate those internal types, if you just need one?
It escalates a little with fs.WalkDir
:
reader, _ := zip.OpenReader("test.zip")
fs.WalkDir(reader, ".", func(path string, d fs.DirEntry, err error) error {
fmt.Println(path)
return nil
})
folder
folder/file.txt
folder/subfolder
folder/subfolder/subfile.txt
folder/subfolder/subsubfolder
folder/subfolder/subsubfolder/subsubfile.txt
folder/subfolder/subsubfolder
folder/subfolder/subsubfolder/subsubfile.txt
folder/subfolder
folder/subfolder/subfile.txt
folder/subfolder/subsubfolder
folder/subfolder/subsubfolder/subsubfile.txt
folder/subfolder/subsubfolder
folder/subfolder/subsubfolder/subsubfile.txt
folder
folder/file.txt
folder/subfolder
folder/subfolder/subfile.txt
folder/subfolder/subsubfolder
folder/subfolder/subsubfolder/subsubfile.txt
folder/subfolder/subsubfolder
folder/subfolder/subsubfolder/subsubfile.txt
folder/subfolder
folder/subfolder/subfile.txt
folder/subfolder/subsubfolder
folder/subfolder/subsubfolder/subsubfile.txt
folder/subfolder/subsubfolder
folder/subfolder/subsubfolder/subsubfile.txt
tmthrgd
Metadata
Metadata
Assignees
Labels
FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.