本文整理汇总了Golang中os.FileInfo.Close方法的典型用法代码示例。如果您正苦于以下问题:Golang FileInfo.Close方法的具体用法?Golang FileInfo.Close怎么用?Golang FileInfo.Close使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类os.FileInfo
的用法示例。
在下文中一共展示了FileInfo.Close方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: VisitFile
// implémentation de filepath.Visitor
func (ls *LecteurScripts) VisitFile(path string, f os.FileInfo) {
pathToken := strings.Split(path, "/")
if strings.HasSuffix(path, ".csv") {
f, err := os.Open(path)
if err != nil {
return
}
defer f.Close()
r := bufio.NewReader(f)
switch pathToken[len(pathToken)-1] {
case "bralduns.csv":
bra.ParseFichierCsvStatique(r, ls.MemMap, func() bra.Visible { return new(bra.Braldun) })
case "communautes.csv":
bra.ParseFichierCsvStatique(r, ls.MemMap, func() bra.Visible { return new(bra.Communauté) })
case "lieux_villes.csv":
bra.ParseFichierCsvStatique(r, ls.MemMap, func() bra.Visible { return new(bra.LieuVille) })
case "regions.csv":
bra.ParseFichierCsvStatique(r, ls.MemMap, func() bra.Visible { return new(bra.Région) })
case "villes.csv":
bra.ParseFichierCsvStatique(r, ls.MemMap, func() bra.Visible { return new(bra.Ville) })
default:
vue, _ := bra.ParseFichierCsvDynamique(r, ls.readTimeFromFilePath(pathToken), ls.MemMap, ls.verbose)
ls.NbReadFiles++
if vue != nil {
//~ fmt.Printf(" -> vue : %+v\n", vue)
if vue.Voyeur > 0 && vue.Time > 0 {
if ls.MemMap.DernièresVues[vue.Voyeur] == nil || vue.Time > ls.MemMap.DernièresVues[vue.Voyeur].Time {
ls.MemMap.DernièresVues[vue.Voyeur] = vue
}
}
}
}
}
}
示例2: visit
func visit(path string, f os.FileInfo, err error) error {
if f.IsDir() {
fmt.Printf("dir: %s\n", path)
} else {
file_size := f.Size()
f, err := os.Open(path)
if err != nil {
log.Fatal(err)
}
x, err := exif.Decode(f)
f.Close()
if err != nil {
log.Fatal(err)
}
date, _ := x.Get("DateTimeOriginal")
fmt.Printf("%s\t", date.StringVal())
expo, _ := x.Get("ExposureTime")
n0, d0 := expo.Rat2(0)
fmt.Printf("%v/%v\t", n0, d0)
fnumber, _ := x.Get("FNumber")
n1, d1 := fnumber.Rat2(0)
fmt.Printf("%v/%v\t", n1, d1)
focal, _ := x.Get("FocalLength")
n2, d2 := focal.Rat2(0)
fmt.Printf("%v/%v\t", n2, d2)
iso, _ := x.Get("ISOSpeedRatings")
if iso != nil {
fmt.Printf("%v\t", iso.Int(0))
} else {
fmt.Printf("noiso\t")
}
fmt.Printf("%s\t%d\n", path, file_size)
}
return nil
}