第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 os.Stat 與僅使用 os.MkdirAll 檢查

使用 os.Stat 與僅使用 os.MkdirAll 檢查

Go
眼眸繁星 2021-12-20 10:07:32
我需要寫入可能存在也可能不存在的嵌套目錄中的文件。首先,我通過檢查文件夾是否存在os.Stat,os.MkdirAll如果它不存在,然后打開并寫入文件。我嘗試刪除 os.Stat 并執(zhí)行os.MkdirAll,它似乎有效 - 意思os.MkdirAll是冪等的。我的問題是,做os.Stat檢查有好處嗎?這是一個比os.MkdirAll?輕得多的操作?
查看完整描述

1 回答

?
四季花海

TA貢獻1811條經驗 獲得超5個贊

首先要做的MkdirAll是調用os.Stat檢查路徑是否存在并且是目錄。


func MkdirAll(path string, perm FileMode) error {

    // Fast path: if we can tell whether path is a directory or file, stop with success or error.

    dir, err := Stat(path)

    if err == nil {

        if dir.IsDir() {

            return nil

        }

        return &PathError{"mkdir", path, syscall.ENOTDIR}

    }

    ...

從文檔:


如果 path 已經是一個目錄,則 MkdirAll 什么都不做并返回 nil。


所以不,你不需要調用os.Stat.


查看完整回答
反對 回復 2021-12-20
  • 1 回答
  • 0 關注
  • 148 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號