zoukankan      html  css  js  c++  java
  • Go语言之文件

     1 package main
     2 
     3 import (
     4     "fmt"
     5     "os"
     6 )
     7 
     8 func main() {
     9     filename := "./main.txt"
    10     _, err := os.Stat(filename)
    11     //判断文件是否存在如果不存在就创建文件
    12     if os.IsNotExist(err) == true {
    13         fmt.Println("文件不存在")
    14         _, err = os.Create(filename)
    15         if err != nil {
    16             fmt.Printf("文件创建失败", err)
    17             return
    18         } else {
    19             fmt.Println("文件创建成功")
    20         }
    21     }
    22     //OpenFile是一个更一般性的文件打开函数,大多数调用者都应用Open或Create代替本函数。它会使用指定的选项(如O_RDONLY等)、
    23     // 指定的模式(如0666等)打开指定名称的文件。
    24     file, err := os.OpenFile(filename, os.O_RDWR, 0666)
    25     if err != nil {
    26         fmt.Println(err)
    27         return
    28     }
    29     //关闭文件
    30     defer file.Close()
    31     //直接写入字符串
    32     //_, err = file.WriteString("aaa")
    33     //if err != nil {
    34     //    fmt.Printf("文件写入失败,错误是:", err)
    35     //}
    36     //读取文件中的内容
    37     var tmp = make([]byte, 128)
    38     n, err := file.Read(tmp)
    39     if err != nil {
    40         fmt.Printf("读取失败,错误是:", err)
    41     }
    42     fmt.Println(string(tmp[:n]))
    43     /*
    44     可以使用ioutil进行对文件的整个读取和写入
    45     content, err := ioutil.ReadFile("./main.go")
    46     -------------------------------------------------------
    47     str := "hello 沙河"
    48     err := ioutil.WriteFile("./xx.txt", []byte(str), 0666)
    49 
    50     */
    51 }
  • 相关阅读:
    第十九天:类和对象
    第十五天:模块
    十四天:匿名函数
    十四天作业
    第十三天:迭代器、递归
    十二天:闭包和装饰器
    一个炒鸡简单的购物车
    十一天
    第十天
    第十天作业
  • 原文地址:https://www.cnblogs.com/yh2924/p/12401794.html
Copyright © 2011-2022 走看看