fi, err := os.Open(path)
if err != nil {
panic(err)
}
defer fi.Close()
fd, err := ioutil.ReadAll(fi) //[]byte
- os.Getwd() 当前文件路径的字符串和一个err信息
- os.Chdir() 将当前文件路径改变为目标路径(非真实改变)
- os.Getenv() 获取系统环境变量的值
- 使用 . 导入包内所有元素
- 使用 _ 只执行_init()
- 当A -> B -> C ,A不能通过 . 的形式,直接使用C的元素
func getCurrentDirectory() string {
dir, err := filepath.Abs(filepath.Dir(os.Args[0]))
if err != nil {
log.Fatal(err)
}
return strings.Replace(dir, "\\", "/", -1)
}
- 一次性获取所有
func getContent(path string) string {
fi, err := os.Open(path)
if err != nil {
panic(err)
}
defer fi.Close()
fd, err := ioutil.ReadAll(fi)
return string(fd)
}
- 按行获取
// filename文件名 handle回调函数
func ReadLine(fileName string, handler func(string)) error {
f, err := os.Open(fileName)
if err != nil {
return err
}
buf := bufio.NewReader(f)
for {
line, err := buf.ReadString('\n')
line = strings.TrimSpace(line)
handler(line)
if err != nil {
if err == io.EOF {
return nil
}
return err
}
}
return nil
}
f, err := os.OpenFile(cd + "/example/"+cts+".go", os.O_WRONLY | os.O_CREATE , 0600)
defer f.Close()
if err != nil{
log.Println(err)
}else {
_,err=f.Write([]byte("要写入的文本内容\nsdfjklsdf"))
}
exp := regexp.MustCompile(`\d+\.\d+`)
result := exp1.FindAllStringSubmatch("text sld sld !", -1)