主頁 > 知識庫 > Golang獲取目錄下的文件及目錄信息操作

Golang獲取目錄下的文件及目錄信息操作

熱門標(biāo)簽:仙桃400電話辦理 寧波語音外呼系統(tǒng)公司 地圖標(biāo)注免費定制店 重慶慶云企業(yè)400電話到哪申請 宿遷便宜外呼系統(tǒng)代理商 鄭州智能語音電銷機器人價格 湛江crm外呼系統(tǒng)排名 不封卡外呼系統(tǒng) 上海極信防封電銷卡價格

一、獲取當(dāng)前目錄下的文件或目錄信息(不包含多級子目錄)

func main() {
 pwd,_ := os.Getwd()
 //獲取文件或目錄相關(guān)信息
 fileInfoList,err := ioutil.ReadDir(pwd)
 if err != nil {
 log.Fatal(err)
 }
 fmt.Println(len(fileInfoList))
 for i := range fileInfoList {
 fmt.Println(fileInfoList[i].Name()) //打印當(dāng)前文件或目錄下的文件或目錄名
 }
}

二、獲取當(dāng)前目錄下的文件或目錄名(不包含多級子目錄)

package main 
import (
 "os"
 "io/ioutil"
 "log"
 "fmt"
 "path/filepath"
)
 
func main() {
 pwd,_ := os.Getwd()
 
 //獲取當(dāng)前目錄下的文件或目錄名(包含路徑)
 filepathNames,err := filepath.Glob(filepath.Join(pwd,"*"))
 if err != nil {
 log.Fatal(err)
 }
 
 for i := range filepathNames {
 fmt.Println(filepathNames[i]) //打印path
 } 
}

三、獲取當(dāng)前文件或目錄下的所有文件或目錄信息(包括子目錄)

package main 
import (
 "os"
 "io/ioutil"
 "log"
 "fmt"
 "path/filepath"
)
 
func main() {
 pwd,_ := os.Getwd() 
 
 //獲取當(dāng)前目錄下的所有文件或目錄信息
 filepath.Walk(pwd,func(path string, info os.FileInfo, err error) error{
 fmt.Println(path) //打印path信息
 fmt.Println(info.Name()) //打印文件或目錄名
 return nil
 })
}

補充:Golang ioutil.ReadDir 讀取目錄下的內(nèi)容

ioutil中提供了一個非常翻遍的函數(shù)函數(shù)ReadDir,他讀取目錄并返回排好序的文件以及子目錄名([]os.FileInfo)

example:編寫程序輸出某目錄下的所有文件。

package main
import (
  "io/ioutil"
  "fmt"
  "os"
)
func listAll(path string, curHier int) {
  readerInfos ,err := ioutil.ReadDir(path)
  if err != nil {
    fmt.Println(err)
    return
  }
  for _, info := range readerInfos {
    if info.IsDir() {
      for tmpheir := curHier; tmpheir >0; tmpheir-- {
        fmt.Printf("|\t")
      }
      fmt.Println(info.Name(),"\\")
      listAll(path + "\\" + info.Name(),curHier+1)
    }else {
      for tmpheir := curHier ;tmpheir >0; tmpheir-- {
        fmt.Printf("|\t")
      }
      fmt.Println(info.Name())
    }
  }
}
func main() {
  dir := os.Args[1]
  listAll(dir,0)
}

我是在win10 環(huán)境中試驗。成功

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 詳解Golang使用MongoDB通用操作
  • Golang 如何判斷數(shù)組某個元素是否存在(isset)
  • golang獲取網(wǎng)卡信息操作
  • golang判斷net.Conn 是否已關(guān)閉的操作
  • 解決golang json解析出現(xiàn)值為空的問題
  • golang 獲取字符串長度的案例
  • 對Golang中的runtime.Caller使用說明
  • 如何判斷Golang接口是否實現(xiàn)的操作
  • 詳解golang中的method

標(biāo)簽:海南 遼寧 安康 青海 物業(yè)服務(wù) 儋州 電子產(chǎn)品 西雙版納

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Golang獲取目錄下的文件及目錄信息操作》,本文關(guān)鍵詞  Golang,獲取,目,錄下,的,文件,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Golang獲取目錄下的文件及目錄信息操作》相關(guān)的同類信息!
  • 本頁收集關(guān)于Golang獲取目錄下的文件及目錄信息操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章