欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

golang 如何獲取文件夾下面的文件列表

 更新時(shí)間:2021年05月07日 09:54:49   作者:解靈運(yùn)  
這篇文章主要介紹了golang 獲取文件夾下面的文件列表方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

golang的文檔里面比較容易找到的一個(gè)方法是filepath.Walk,這個(gè)方法有個(gè)問(wèn)題是會(huì)自動(dòng)遞歸遍歷當(dāng)前目錄的子目錄,其實(shí)我們通常只是想得到一個(gè)目錄下面的文件列表,并不需要這么多的信息,同時(shí)這個(gè)方法代碼寫起來(lái)也比較多比較復(fù)雜,我們也沒有必要這么做。

如果僅僅是想獲取一個(gè)目錄下面的文件和文件夾的列表,有兩個(gè)比較簡(jiǎn)單的方法

利用ioutil的ReadDir方法

package main 
import (
    "fmt"
    "io/ioutil"
)
 
func main() {
    files, _ := ioutil.ReadDir("./")
    for _, f := range files {
            fmt.Println(f.Name())
    }
}

利用filepath的Glob方法

package main  
import (
    "fmt"
    "path/filepath"
)
 
func main() {
    files, _ := filepath.Glob("*")
    fmt.Println(files) // contains a list of all files in the current directory
}

補(bǔ)充:golang獲取文件/目錄(包含下面的文件)的大小

看代碼吧~

func DirSize(path string) (int64, error) {
 var size int64
 err := filepath.Walk(path, func(_ string, info os.FileInfo, err error) error {
  if !info.IsDir() {
   size += info.Size()
  }
  return err
 })
 return size, err
}

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

相關(guān)文章

  • Go整合ElasticSearch的示例代碼

    Go整合ElasticSearch的示例代碼

    這篇文章主要介紹了Go整合ElasticSearch的相關(guān)知識(shí),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • 詳解go語(yǔ)言單鏈表及其常用方法的實(shí)現(xiàn)

    詳解go語(yǔ)言單鏈表及其常用方法的實(shí)現(xiàn)

    這篇文章主要介紹了詳解go語(yǔ)言單鏈表及其常用方法的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Go語(yǔ)言學(xué)習(xí)之文件操作方法詳解

    Go語(yǔ)言學(xué)習(xí)之文件操作方法詳解

    這篇文章主要為大家詳細(xì)介紹了Go語(yǔ)言中一些常見的文件操作,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Go語(yǔ)言有一定的幫助,需要的可以參考一下
    2022-04-04
  • 使用Go語(yǔ)言實(shí)現(xiàn)跨域資源共享(CORS)設(shè)置

    使用Go語(yǔ)言實(shí)現(xiàn)跨域資源共享(CORS)設(shè)置

    在Web開發(fā)中,跨域資源共享(CORS)是一種重要的安全機(jī)制,它允許許多資源在一個(gè)網(wǎng)頁(yè)上被另一個(gè)來(lái)源的網(wǎng)頁(yè)所訪問(wèn),然而,出于安全考慮,瀏覽器默認(rèn)禁止這種跨域訪問(wèn),為了解決這個(gè)問(wèn)題,我們可以使用Go語(yǔ)言來(lái)設(shè)置CORS,需要的朋友可以參考下
    2024-06-06
  • 詳解Go語(yǔ)言的錯(cuò)誤處理和資源管理

    詳解Go語(yǔ)言的錯(cuò)誤處理和資源管理

    資源處理是什么?打開文件需要關(guān)閉,打開數(shù)據(jù)庫(kù)連接,連接需要釋放。這些成對(duì)出現(xiàn)的就是資源管理。有時(shí)候我們雖然釋放了,但是程序在中間出錯(cuò)了,那么可能導(dǎo)致資源釋放失敗。如何保證打開的文件一定會(huì)被關(guān)閉呢?這就是資源管理與錯(cuò)誤處理考慮的一個(gè)原因
    2021-06-06
  • Go 通過(guò)結(jié)構(gòu)struct實(shí)現(xiàn)接口interface的問(wèn)題

    Go 通過(guò)結(jié)構(gòu)struct實(shí)現(xiàn)接口interface的問(wèn)題

    這篇文章主要介紹了Go 通過(guò)結(jié)構(gòu)struct實(shí)現(xiàn)接口interface的問(wèn)題,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10
  • 更高效的GoLevelDB:shardingdb實(shí)現(xiàn)分片和并發(fā)讀寫操作

    更高效的GoLevelDB:shardingdb實(shí)現(xiàn)分片和并發(fā)讀寫操作

    這篇文章主要介紹了更高效的GoLevelDB:shardingdb實(shí)現(xiàn)分片和并發(fā)讀寫操作的相關(guān)資料,需要的朋友可以參考下
    2023-09-09
  • Go經(jīng)典面試題匯總(填空+判斷)

    Go經(jīng)典面試題匯總(填空+判斷)

    這篇文章主要介紹了Go經(jīng)典面試題匯總(填空+判斷),本文章內(nèi)容詳細(xì),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,需要的朋友可以參考下
    2023-01-01
  • go語(yǔ)言基礎(chǔ)教程之(包、變量和函數(shù))

    go語(yǔ)言基礎(chǔ)教程之(包、變量和函數(shù))

    這篇文章主要介紹了go語(yǔ)言基礎(chǔ)教程之(包、變量和函數(shù))的相關(guān)資料,需要的朋友可以參考下
    2023-07-07
  • Golang import本地包和導(dǎo)入問(wèn)題相關(guān)詳解

    Golang import本地包和導(dǎo)入問(wèn)題相關(guān)詳解

    這篇文章主要介紹了Golang import本地包和導(dǎo)入問(wèn)題相關(guān)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02

最新評(píng)論