• go文件操作


    1.go文件操作

    package main
    
    import (
        "bufio"
        "fmt"
        "io"
        "io/ioutil"
        "os"
    )
    
    //一次一次读取文件
    func main(){
        fileName:="test.txt";
        file,_:=os.Open(fileName);//打开一个文件
        reader:=bufio.NewReader(file);//使用bufio读取一个文件
        for {//循环读取
            str,error:=reader.ReadString('
    ');//使用换行符
            if error == io.EOF {
                break;
            }
            fmt.Print(str);
        }
        fmt.Println("file read end");
    }
    //一次性读取文件
    func main(){
        content,_:= ioutil.ReadFile("test.txt");
        fmt.Print(string(content));
    }

     2.文件操作题

    package main
    
    import (
        "bufio"
        "fmt"
        "io"
        "os"
    )
    
    //写入数据=数据是字符串
    //func main() {
    //    file,_:=os.OpenFile("1.txt",os.O_RDWR | os.O_APPEND|os. O_CREATE,066);
    //    str:="this is test
    ";
    //    file.WriteString(str);
    //    defer file.Close();
    //}
    //使用缓存写文件
    //func main(){
    //    str:="111111111111111";
    //    file,_:=os.OpenFile("1.txt",os.O_RDWR|os.O_APPEND|os. O_CREATE,066);
    //    write:=bufio.NewWriter(file);
    //    write.WriteString(str);
    //    write.Flush();
    //    defer  file.Close();
    //}
    //文件已经存在,清空后创建
    //func main(){
    //    file,_:=os.OpenFile("1.txt",os.O_WRONLY|os.O_TRUNC,0666);
    //    str:="2222";
    //    write:=bufio.NewWriter(file);
    //    write.WriteString(str);
    //    write.Flush();
    //}
    //文件已存在,追加
    //func main(){
    //    file,_:=os.OpenFile("1.txt",os.O_WRONLY|os.O_APPEND,0666);
    //    str:="11111111";
    //    write:=bufio.NewWriter(file);
    //    write.WriteString(str);
    //    write.Flush();
    //}
    //将文件显示在终端,然后追加
    func main(){
        file,_:= os.OpenFile("1.txt",os.O_RDWR|os.O_APPEND,0666);
        read:=bufio.NewReader(file);
        for {
            str,err:= read.ReadString('
    ');
            if err == io.EOF {
                break;
            }
            fmt.Print(str);
        }
        newStr:="aaaaaaaaaaaaaaaaa";
        write:=bufio.NewWriter(file);
        write.WriteString(newStr);
        write.Flush();
    
    }

     3.将一个文件内容复制到另外一个文件内容下

    package main
    
    //将一个文件里面内容导入另外一个文件里面去
    //func main(){
    //    filePath:="1.txt";
    //    filePath2:="2.txt";
    //    data,err:=ioutil.ReadFile(filePath);
    //    if err != nil {
    //        fmt.Println("file error");
    //    }
    //    ioutil.WriteFile(filePath2,data,0666);
    //}

     4.复制图片内容

    package main
    import (
        "bufio"
        "fmt"
        "io"
        "os"
    )
    //复制图片内容
    func main(){
        sourceFile,err:=os.Open("1.jpg");
        if err != nil {
            fmt.Println("open file is error");
        }
        reader:= bufio.NewReader(sourceFile);
        dstFile,error:=os.OpenFile("2.jpg",os.O_CREATE|os.O_RDWR,0666);
        if error != nil {
            fmt.Println("open file erorr");
        }
        writer:=bufio.NewWriter(dstFile);
        io.Copy(writer,reader);
    }
  • 相关阅读:
    find命令排除某些目录或文件
    推荐一个变量调试神器:gospew
    C语言编写Linux终端环境下无缓冲键盘输入 ,并识别上下左右光标键
    .gitignore文件的使用方法(学习总结版)
    为什么考试时不要作弊
    空调除湿和制冷有什么区别
    Git 使用中的一些例子
    强身健体对中国男性来说越发的重要——男性的身体素质依然是国家实力的一种体现
    Git 学习笔记——git checkout
    .gitignore文件的使用方法(学习总结版)—— .gitignore 文件的配合用法
  • 原文地址:https://www.cnblogs.com/zh718594493/p/14094957.html
Copyright © 2020-2023  润新知