func main()檔案路徑:else
}
(1)、判斷是否是絕對路徑filepath.isabs()
(2)、獲取相對路徑filepath.rel()
(3)、獲取絕對路徑filepath.abs()
(4)、拼接路徑path.join()
檔案操作:
1.建立資料夾,如果資料夾存在,建立失敗
2.建立檔案:如果檔案存在,會覆蓋
3.開啟檔案:
4.關閉檔案:
5.刪除:
package mainview codeimport (
"os""
fmt"
)func main()
else
filename2 := "
./test2/abc/xyz
"err =os.mkdirall(filename2, os.modeperm)
if err !=nil
else
//2、建立檔案.如果檔案已經存在,則檔案被覆蓋
filename3 := "
./test1/abc.txt
"file1, err :=os.create(filename3)
if err !=nil
else
//3、開啟檔案
file2, err :=os.open(filename3)
if err !=nil
else
/*第乙個引數:檔名稱
第二個引數:檔案的開啟方式
o_rdonly:唯讀模式(read-only)
o_wronly:只寫模式(write-only)
o_rdwr:讀寫模式(read-write)
o_create:檔案不存在就建立(create a new file if none exists.)
第三個引數:檔案的許可權:檔案不存在建立檔案,需要指定許可權
*/filename4 := "
./test1/abc2.txt
"file4, err := os.openfile(filename4, os.o_rdwr|os.o_create, os.modeperm)
if err !=nil
else
//4、關閉檔案,程式與檔案的聯絡斷開
file4.close()
//5、刪除檔案和目錄
filename5 := "
./test1
"err =os.remove(filename5)
if err !=nil
else
err =os.removeall(filename5)
if err !=nil
else
}
檔案讀寫
/*view code*2.讀取檔案file.read(byte)-->n,err 從檔案中開始讀取資料,存入到byte切片中,返回值n是本次實際讀取的資料量如果讀取到檔案末尾,n為0,err為eof:end of file */
func readfile(filename
string
)else
str= strings.join(string,""
) }
fmt.println(str)
}//3、關閉檔案
file2.close()
}func writefile(filename
string
)else
file2.close();
}
/*ioutil包:
readfile() //讀取檔案中的所有的資料,返回讀取的位元組陣列
writefile() //向指定檔案寫入資料,如果檔案不存在,則建立檔案,寫入資料之前清空檔案
readdir() //讀取乙個目錄下的子內容:子檔案和子目錄,但是僅有一層
tempdir() //在當前目錄下,建立乙個以指定字串為字首的臨時資料夾,並返回資料夾路徑
tempfile() //在當前目錄下,建立乙個以指定字串為字首的檔案,並以讀寫模式開啟檔案,並返回os.file指標物件
*/
package mainview codeimport (
"io/ioutil""
fmt""os
")func main()
else
//2、writefile()
//向指定檔案寫入資料,如果檔案不存在,則建立檔案,寫入資料之前清空檔案
filename2 := "
./files/xyz.txt
"s1 := "
steven陪你學區塊鏈
"err = ioutil.writefile(filename2, byte(s1), 0777
)
if err !=nil
else
//3、檔案拷貝
err =ioutil.writefile(filename2 , data , os.modeperm)
if err !=nil
else
//4、readdir()
//讀取乙個目錄下的子內容:子檔案和子目錄,但是僅有一層
dirname := "./"
fileinfos , err :=ioutil.readdir(dirname)
if err !=nil
else
}//5、tempdir()
//在當前目錄下,建立乙個以指定字串為字首的臨時資料夾,並返回資料夾路徑
filename , err := ioutil.tempdir("
./" , "
temp")
if err !=nil
else
//6、tempfile()
//在當前目錄下,建立乙個以指定字串為字首的檔案,並以讀寫模式開啟檔案,並返回os.file指標物件
file1 , err := ioutil.tempfile(filename , "
temp")
if err !=nil
else
file1.close()
}
Go語言基礎(十六) Go語言檔案操作
package main import fmt os bufio io ioutil 錯誤處理方法 func handle why string,e error func main handle 檔案讀取失敗!err fmt.println str fmt.println 檔案讀取完畢!讀檔案方式二...
Go基礎之 操作Mysql 三
事務是資料庫的乙個非常重要的特性,尤其對於銀行,支付系統,等等。database sql提供了事務處理的功能。通過tx物件實現。db.begin會建立tx物件,後者的exec和query執行事務的資料庫操作,最後在tx的commit和rollback中完成資料庫事務的提交和回滾,同時釋放連線。我們在...
Go基礎 終端操作和檔案操作
操作終端相關的檔案控制代碼常量 os.stdin 標準輸入 os.stdout 標準輸出 os.stderr 標準錯誤輸出 關於終端操作的 例子 package main import fmt var firstname,lastname,s string i intf float32 input ...