| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- package common
- import (
- "io/ioutil"
- "os"
- "os/user"
- "path"
- "strings"
- )
- func ExpandHomePath(p string) (path string) {
- path = p
- // Check in case of paths like "/something/~/something/"
- if len(path) > 1 && path[:2] == "~/" {
- usr, _ := user.Current()
- dir := usr.HomeDir
- path = strings.Replace(p, "~", dir, 1)
- }
- return
- }
- func FileExist(filePath string) bool {
- _, err := os.Stat(filePath)
- if err != nil && os.IsNotExist(err) {
- return false
- }
- return true
- }
- func ReadAllFile(filePath string) (string, error) {
- file, err := os.Open(filePath)
- if err != nil {
- return "", err
- }
- data, err := ioutil.ReadAll(file)
- if err != nil {
- return "", err
- }
- return string(data), nil
- }
- func WriteFile(filePath string, content []byte) error {
- fh, err := os.OpenFile(filePath, os.O_TRUNC|os.O_RDWR|os.O_CREATE, os.ModePerm)
- if err != nil {
- return err
- }
- defer fh.Close()
- _, err = fh.Write(content)
- if err != nil {
- return err
- }
- return nil
- }
- func AbsolutePath(Datadir string, filename string) string {
- if path.IsAbs(filename) {
- return filename
- }
- return path.Join(Datadir, filename)
- }
|