Go 檔案讀寫

2021-07-28 00:15:38 字數 2148 閱讀 9147

看了下go語言的標準庫,最開始看了下io庫想著看看go語言提供的函式如何實現檔案的讀寫,粗略的看了下就想著使用go語言提供的方法讀寫檔案試下吧。

讀檔案,示例:

package main

import (

"fmt"

"io/ioutil"

"os"

)const (

file = "./test.txt"

)//read file

func main()

defer fd.close()

len,err := fd.seek(0

,2)//獲取檔案長度

if err != nil

strbyte := make(byte,len)

fd.seek(0

,0) //移回指標到檔案開頭

fd.read(strbyte) //讀檔案

fmt.println(string(strbyte))

dat,err := ioutil.readfile(file) //直接讀檔案

if err != nil

fmt.println(string(dat))

}

按照c語言的方式進行了檔案的讀寫後,才發現go語言提供了更方便的方法使用ioutil庫中的readfile函式可直接讀取函式。

寫檔案,示例:

//write file

func main()

dstr := byte("this is a test")

if err != nil

defer fd.close()

num,err := fd.write(dstr)

if err != nil

fmt.println(num)

}

const (

// the single letters are the abbreviations

// used by the string method's formatting.

modedir filemode =1

<< (32 -1 - iota) // d: is a directory

modeexclusive // l: exclusive use

modetemporary // t: temporary file (not backed up)

modesymlink // l: symbolic link

modedevice // d: device file

modenamedpipe // p: named pipe (fifo)

modesocket // s: unix domain socket

modesetuid // u: setuid

modesetgid // g: setgid

modechardevice // c: unix character device, when modedevice is set

modesticky // t: sticky

// mask for the type bits. for regular files, none will be set.

modetype = modedir | modesymlink | modenamedpipe | modesocket | modedevice

modeperm filemode =0777

// unix permission bits

)

go 檔案讀寫操作

func fileread path string rb make byte,1024,1024 for fmt.println string rb n err file.close if err nil func bufio path string defer file.close const d...

GO 檔案的讀寫

首先寫乙個檔案 package main import os fmt func writefile path string 寫檔案 var buf string for i 0 i 10 i n n 關閉檔案 defer f.close func main 執行完成後就會在程式的同目錄生成乙個dem...

go語言的讀寫檔案

以create方法寫檔案 以新建的方式開啟,create方法每次開啟都會清空裡面的內容 f,err os.create hah.txt if err nil defer f.close f.writestring hello,kingsoft 以open唯讀的方式開啟 open是以唯讀的方式開啟,只...