Go语言文件操作的方法
本文实例讲述了Go语言文件操作的方法。分享给大家供大家参考。具体如下:
关闭文件:
func (file *File) Close() os.Error {
if file == nil {
return os.EINVAL
}
e := syscall.Close(file.fd)
file.fd = -1 // so it can't be closed again
if e != 0 {
return os.Errno(e)
}
return nil
}
文件读取:
func (file *File) Read(b []byte) (ret int, err os.Error) {
if file == nil {
return -1, os.EINVAL
}
r, e := syscall.Read(file.fd, b)
if e != 0 {
err = os.Errno(e)
}
return int(r), err
}
写文件:
func (file *File) Write(b []byte) (ret int, err os.Error) {
if file == nil {
return -1, os.EINVAL
}
r, e := syscall.Write(file.fd, b)
if e != 0 {
err = os.Errno(e)
}
return int(r), err
}
获取文件名:
func (file *File) String() string {
return file.name
}
希望本文所述对大家的Go语言程序设计有所帮助。
相关推荐
-
go语言文件正则表达式搜索功能示例
本文实例讲述了go语言文件正则表达式搜索功能.分享给大家供大家参考,具体如下: 复制代码 代码如下: package main import ( "fmt" "os" "path/filepath" "regexp" ) func main() { // 命令行参数 args := os.Args // 检查参数 if len(args) == 1 {
-
go语言遍历文件夹示例
用python遍历文件夹很方便,在go的世界里,我也需要这样的功能.找了找文档,里面有这个功能(具体参考这里:http://golang.org/pkg/path/filepath/ )-- 好,不废话了,我也想早点睡,直接上代码. 代码如下: 复制代码 代码如下: /* File : getFilelist.go Author : Mike E-Mail : Mike_Zhang@live.com */ package main import ( "path/fi
-
Go语言正则表达式示例
本文实例讲述了Go语言正则表达式.分享给大家供大家参考,具体如下: 复制代码 代码如下: package main import "bytes" import "fmt" import "regexp" func main() { //这个测试一个字符串是否符合一个表达式. match, _ := regexp.MatchString("p([a-z]+)ch", "peach") fmt.
-
Go语言正则表达式用法实例小结【查找、匹配、替换等】
本文实例讲述了Go语言正则表达式用法.分享给大家供大家参考,具体如下: Go语言的正则表达式使用很简单,示例代码: 复制代码 代码如下: package test import ( "fmt" "regexp" ) func RegixBase() { //findTest() //findIndexTest() //findStringTest() //findChinesString() //findNum
-
GO语言文件的创建与打开实例分析
本文实例分析了GO语言文件的创建与打开用法.分享给大家供大家参考.具体分析如下: 文件操作是个很重要的话题,使用也非常频繁,熟悉如何操作文件是必不可少的.Golang 对文件的支持是在 os package 里,具体操作都封装在 type File struct {} 结构体中. 一.func Open(name string) (file *File, err error) 再简单不过了,给一个路径给它,返回文件描述符,如果出现错误就会返回一个 *PathError. 这是一个只读打开模式,实
-
GO语言实现列出目录和遍历目录的方法
本文实例讲述了GO语言实现列出目录和遍历目录的方法.分享给大家供大家参考.具体如下: GO语言获取目录列表用 ioutil.ReadDir(),遍历目录用 filepath.Walk(),使用方法课参考本文示例. 具体示例代码如下: 复制代码 代码如下: package main import ( "fmt" "io/ioutil" "os" "path/filepath" "strings" )
-
Go语言编程中判断文件是否存在是创建目录的方法
判断文件是否存在 os.IsExists()函数和os.IsNotExists(),他们的函数的原形是func IsExist(err error) bool func IsNotExist(err error) bool 都是传入一个err返回bool 这里注意了 err已经定义好了 复制代码 代码如下: /* var ( ErrInvalid = errors.New("invalid argument") ErrPermission = errors.
-
GO语言实现简单的目录复制功能
本文实例讲述了GO语言实现简单的目录复制功能.分享给大家供大家参考.具体实现方法如下: 创建一个独立的 goroutine 遍历文件,主进程负责写入数据.程序会复制空目录,也可以设置只复制以 ".xx" 结尾的文件. 严格来说这不是复制文件,而是写入新文件.因为这个程序是创建新文件,然后写入复制数据的.我们一般的 copy 命令是不会修改文件的 ctime(change time) 状态的. 代码如下: 复制代码 代码如下: // 一个简单的目录复制程序:一个独立的 goroutine
-
Go语言的GOPATH与工作目录详解
GOPATH设置 go 命令依赖一个重要的环境变量:$GOPATH1 (注:这个不是Go安装目录.下面以笔者的工作目录为说明,请替换自己机器上的工作目录.) 在类似 Unix 环境大概这样设置: 复制代码 代码如下: export GOPATH=/home/apple/mygo 为了方便,应该把新建以上文件夹,并且把以上一行加入到 .bashrc 或者 .zshrc 或者自己的 sh 的配置文件中. Windows 设置如下,新建一个环境变量名称叫做GOPATH: 复制代码 代码如下: GOPA
-
Go语言扫描目录并获取相关信息的方法
本文实例讲述了Go语言扫描目录并获取相关信息的方法.分享给大家供大家参考.具体分析如下: 前言:最近看到Go里面有一个func很容易就可以扫描整个目录,并且可以得到相应的目录和文件信息,所以我将其进行了封装,拿到file info的所有信息 这样就可以方便的做其它用途了. 直接上代码,代码基于Go version 1 复制代码 代码如下: package main import ( "path/filepath" "os" "fla
随机推荐
- asp.net汉字转拼音和获取汉字首字母的代码
- 科学知识:同步、异步、阻塞和非阻塞区别
- JavaScript设置首页和收藏页面的小例子
- volatile可见性的一些认识和论证
- ORACLE中的的HINT详解
- ASP.NET比较常用的26个性能优化技巧
- 在Golang中使用C语言代码实例
- 推荐ASP超速入门视频教程
- 用CSS实现链接的虚线下划线效果
- JavaScript中的函数声明和函数表达式区别浅析
- android基础总结篇之九:Intent应用详解
- IT人士绝对需要学习的 预防颈椎病锻炼方法
- Powershell ISE的抽象语法树编程示例
- Win2008 iis7服务器中批量迁移到另外一台IIS7的实现步骤
- JS实现的另类手风琴效果网页内容切换代码
- php读取mssql的ntext字段返回值为空的解决方法
- C#缩略图多路径多格式保存的实例
- Mysql优化技巧之Limit查询的优化分析
- OpenCV获取鼠标左键点击位置图像的像素值
- JQuery中queue方法用法示例
