本文整理汇总了Golang中github.com/spf13/afero.Fs.MkdirAll方法的典型用法代码示例。如果您正苦于以下问题:Golang Fs.MkdirAll方法的具体用法?Golang Fs.MkdirAll怎么用?Golang Fs.MkdirAll使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/spf13/afero.Fs
的用法示例。
在下文中一共展示了Fs.MkdirAll方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: SafeWriteToDisk
func SafeWriteToDisk(inpath string, r io.Reader, fs afero.Fs) (err error) {
dir, _ := filepath.Split(inpath)
ospath := filepath.FromSlash(dir)
if ospath != "" {
err = fs.MkdirAll(ospath, 0777) // rwx, rw, r
if err != nil {
return
}
}
exists, err := Exists(inpath, fs)
if err != nil {
return
}
if exists {
return fmt.Errorf("%v already exists", inpath)
}
file, err := fs.Create(inpath)
if err != nil {
return
}
defer file.Close()
_, err = io.Copy(file, r)
return
}
示例2: getSettingsFolder
// getSettingsFolder returns the path of the settings folder
// and ensures that the folder exists.
func getSettingsFolder(fs afero.Fs, baseFolder string) string {
settingsFolder := filepath.Join(baseFolder, ".dee")
createFolderError := fs.MkdirAll(settingsFolder, 0700)
if createFolderError != nil {
panic(createFolderError)
}
return settingsFolder
}
示例3: newFile
func newFile(testName string, fs afero.Fs, t *testing.T) (f afero.File) {
fs.MkdirAll(testDir, 0777)
f, err := fs.Create(path.Join(testDir, testName))
if err != nil {
t.Fatalf("%v: create %s: %s", fs.Name(), testName, err)
}
_, err = f.WriteString("")
if err != nil {
t.Fatalf("%v: writestring %s: %s", fs.Name(), testName, err)
}
return f
}
示例4: WriteToDisk
func WriteToDisk(inpath string, r io.Reader, fs afero.Fs) (err error) {
dir, _ := filepath.Split(inpath)
ospath := filepath.FromSlash(dir)
if ospath != "" {
err = fs.MkdirAll(ospath, 0777) // rwx, rw, r
if err != nil {
if err != os.ErrExist {
panic(err)
}
}
}
file, err := fs.Create(inpath)
if err != nil {
return
}
defer file.Close()
_, err = io.Copy(file, r)
return
}