Go语言中的文件处理:如何移动文件

发表时间: 2024-05-24 11:47
package mainimport ("fmt""os")func main() {    // 移动文件  如果路径相同 重命名    err := os.Rename("/data/mysql.txt", "/home/mysql.txt")    if err != nil {        fmt.Println(err)        return    }}


如何获取文件的大小?

package mainimport ("io""io/ioutil""log""os")func main() {    // 第一种方式    file, err := os.Open("chunjie.jpg")    if err == nil {        sum := 0        buf := make([]byte, 2014)        for {            n, err := file.Read(buf)            sum += n            if err == io.EOF {                break            }    		}    		log.Println("file size is ", sum)    }    // 第二种方式    content, err := ioutil.ReadFile("chunjie.jpg")    if err == nil {    		log.Println("file size is ", len(content))    }    // Stat方法    /*    fi, _ := file.Stat()    log.Println("file size is ", fi.Size()) // 单位: bytes    */    // 第三种方式 终极方案 效率最高的方式    fi, err := os.Stat("chunjie.jpg")    if err == nil {        log.Println("name:", fi.Name()) // name: chunjie.jpg        log.Println("size:", fi.Size()) // size: 230575        log.Println("is dir:", fi.IsDir()) // size: 230575        log.Println("mode::", fi.Mode()) // is dir: false        log.Println("modTime:", fi.ModTime()) // modTime: 2021-12-27 18:38:07.0874474 +0800 CST    }}