zoukankan      html  css  js  c++  java
  • Go文件操作

    Go文件操作

    go对于文件的操作提供了多个包进行支持,目前学习了这部分,故对该包的使用记录一下。

    package main
    
    import (
    	"fmt"
    	"os"
    	"io"
    )
    
    func main(){
    	fi, err := os.Open("main.go")
    	if err != nil{
    		fmt.Println(err)
    		return
    	}
    	wi, err := os.Create("wo.go")
    	if err != nil{
    		fmt.Println(err)
    		return
    	}
    	data := make([]byte, 100)
    	for {
    		n, err := fi.Read(data)
    		if err != nil{
    			if err == io.EOF{
    				break//已经读取完了
    			}else{
    				fmt.Println(err)
    			}
    		}
    		w, err := wi.Write(data[0:n])
    		if err != nil{
    			fmt.Println(err)//出错了
    			return
    		}
    		if w != n{
    			fmt.Println("也是有错误的!")
    			return
    		}
    		fmt.Print(string(data[0:n]))
    
    	}
    }
    

    获取文件的属性

    package main
    
    import (
    	"fmt"
    	"os"
    )
    
    func main(){
    	fileInfo, err := os.Stat("main.go")
    	if err != nil{
    		fmt.Println(err)
    	}
    	fmt.Print(fileInfo)
    }
    

    其中FileInfo的结构如下:

    type FileInfo interface {
    	Name() string       // base name of the file 文件名
    	Size() int64        // length in bytes for regular files; system-dependent for others
    	Mode() FileMode     // file mode bits
    	ModTime() time.Time // modification time
    	IsDir() bool        // abbreviation for Mode().IsDir()
    	Sys() interface{}   // underlying data source (can return nil)
    }
    
  • 相关阅读:
    集合容器概述
    enum枚举类型
    this关键字、this()、super()
    重载与重写
    nginx报404的可能错误
    nginx常用命令
    vbs系统监控
    VBS windows监控
    Oracle SQL优化[转]
    shell /bin/bash^M: bad interpreter错误解决
  • 原文地址:https://www.cnblogs.com/zzr-stdio/p/9873943.html
Copyright © 2011-2022 走看看