婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Go語言掃描目錄并獲取相關信息的方法

Go語言掃描目錄并獲取相關信息的方法

熱門標簽:海外照相館地圖標注入駐 工商信用卡外呼系統教程 滁州自建外呼系統 客服級電銷機器人 經常接到推銷電話機器人的電話 智能營銷軟件 外呼系統如何接收服務密碼 外呼系統多少錢一年 旅游廁所如何電子地圖標注

本文實例講述了Go語言掃描目錄并獲取相關信息的方法。分享給大家供大家參考。具體分析如下:

前言:最近看到Go里面有一個func很容易就可以掃描整個目錄,并且可以得到相應的目錄和文件信息,所以我將其進行了封裝,拿到file info的所有信息 這樣就可以方便的做其它用途了。

直接上代碼,代碼基于Go version 1

復制代碼 代碼如下:
package main
import (
    "path/filepath"
    "os"
    "flag"
    "fmt"
    "time"
)
const (
    IsDirectory             = iota
    IsRegular
    IsSymlink
)
type sysFile struct { 
    fType       int
    fName       string
    fLink       string
    fSize       int64
    fMtime      time.Time
    fPerm       os.FileMode
}
type F struct {
    files []*sysFile
}
func (self *F) visit(path string, f os.FileInfo, err error) error {
    if ( f == nil ) {
        return err
    }
    var tp int
    if f.IsDir() {
        tp = IsDirectory
    }else if (  f.Mode() os.ModeSymlink ) > 0 {
        tp = IsSymlink
    }else{
        tp = IsRegular
    }
    inoFile := sysFile{
        fName : path,
        fType : tp,
        fPerm : f.Mode(),
        fMtime: f.ModTime(),
        fSize : f.Size(),
    }
    self.files = append( self.files, inoFile )
    return nil
}
func main() {
    flag.Parse()
    root := flag.Arg(0)
    self := F{
        files: make( []*sysFile, 0 ),
    }
    err := filepath.Walk(root, func(path string, f os.FileInfo, err error) error {
        return self.visit(path, f, err)
    })
    if err != nil { 
      fmt.Printf("filepath.Walk() returned %v\n", err)
    }
    for _, v := range self.files {
        fmt.Println( v.fName,v.fSize )
    }
}

希望本文所述對大家的Go語言程序設計有所幫助。

您可能感興趣的文章:
  • Go語言正則表達式用法實例小結【查找、匹配、替換等】
  • Go語言正則表達式示例
  • Go語言編程中判斷文件是否存在是創建目錄的方法
  • GO語言實現簡單的目錄復制功能
  • GO語言實現列出目錄和遍歷目錄的方法
  • Go語言的GOPATH與工作目錄詳解
  • GO語言文件的創建與打開實例分析
  • go語言遍歷文件夾示例
  • Go語言文件操作的方法
  • go語言文件正則表達式搜索功能示例

標簽:湘潭 喀什 本溪 運城 九江 晉城 楚雄 深圳

巨人網絡通訊聲明:本文標題《Go語言掃描目錄并獲取相關信息的方法》,本文關鍵詞  語言,掃描,目錄,并,獲取,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Go語言掃描目錄并獲取相關信息的方法》相關的同類信息!
  • 本頁收集關于Go語言掃描目錄并獲取相關信息的方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 永康市| 秀山| 普兰县| 阿瓦提县| 宿松县| 中卫市| 湖口县| 东光县| 修文县| 广昌县| 汨罗市| 玛纳斯县| 四子王旗| 琼海市| 青州市| 名山县| 海原县| 来安县| 乌审旗| 巴彦县| 泗水县| 博野县| 泽库县| 仁布县| 香格里拉县| 巴彦县| 康平县| 穆棱市| 板桥市| 鄯善县| 福州市| 长乐市| 宜州市| 政和县| 高安市| 美姑县| 博湖县| 庆安县| 聂荣县| 凌云县| 麟游县|