github.com/linapex/ethereum-dpos-chinese@v0.0.0-20190316121959-b78b3a4a1ece/common/path.go (about) 1 2 //<developer> 3 // <name>linapex 曹一峰</name> 4 // <email>linapex@163.com</email> 5 // <wx>superexc</wx> 6 // <qqgroup>128148617</qqgroup> 7 // <url>https://jsq.ink</url> 8 // <role>pku engineer</role> 9 // <date>2019-03-16 12:09:32</date> 10 //</624342609896148992> 11 12 13 package common 14 15 import ( 16 "fmt" 17 "os" 18 "path/filepath" 19 "runtime" 20 ) 21 22 //makename创建一个遵循以太坊约定的节点名 23 //对于这样的名字。它添加了操作系统名称和go运行时版本 24 //这个名字。 25 func MakeName(name, version string) string { 26 return fmt.Sprintf("%s/v%s/%s/%s", name, version, runtime.GOOS, runtime.Version()) 27 } 28 29 //fileexist检查文件路径中是否存在文件。 30 func FileExist(filePath string) bool { 31 _, err := os.Stat(filePath) 32 if err != nil && os.IsNotExist(err) { 33 return false 34 } 35 36 return true 37 } 38 39 //absolutePath返回datadir+filename,如果是绝对的,则返回filename。 40 func AbsolutePath(datadir string, filename string) string { 41 if filepath.IsAbs(filename) { 42 return filename 43 } 44 return filepath.Join(datadir, filename) 45 } 46