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语言文件的创建与打开用法.分享给大家供大家参考.具体分析如下: 文件操作是个很重要的话题,使用也非常频繁,熟悉如何操作文件是必不可少的.Golang 对文件的支持是在 os package 里,具体操作都封装在 type File struct {} 结构体中. 一.func Open(name string) (file *File, err error) 再简单不过了,给一个路径给它,返回文件描述符,如果出现错误就会返回一个 *PathError. 这是一个只读打开模式,实
-
go语言文件正则表达式搜索功能示例
本文实例讲述了go语言文件正则表达式搜索功能.分享给大家供大家参考,具体如下: 复制代码 代码如下: package main import ( "fmt" "os" "path/filepath" "regexp" ) func main() { // 命令行参数 args := os.Args // 检查参数 if len(args) == 1 {
-
GO语言实现列出目录和遍历目录的方法
本文实例讲述了GO语言实现列出目录和遍历目录的方法.分享给大家供大家参考.具体如下: GO语言获取目录列表用 ioutil.ReadDir(),遍历目录用 filepath.Walk(),使用方法课参考本文示例. 具体示例代码如下: 复制代码 代码如下: package main import ( "fmt" "io/ioutil" "os" "path/filepath" "strings" )
-
Go语言扫描目录并获取相关信息的方法
本文实例讲述了Go语言扫描目录并获取相关信息的方法.分享给大家供大家参考.具体分析如下: 前言:最近看到Go里面有一个func很容易就可以扫描整个目录,并且可以得到相应的目录和文件信息,所以我将其进行了封装,拿到file info的所有信息 这样就可以方便的做其它用途了. 直接上代码,代码基于Go version 1 复制代码 代码如下: package main import ( "path/filepath" "os" "fla
-
Go语言正则表达式示例
本文实例讲述了Go语言正则表达式.分享给大家供大家参考,具体如下: 复制代码 代码如下: package main import "bytes" import "fmt" import "regexp" func main() { //这个测试一个字符串是否符合一个表达式. match, _ := regexp.MatchString("p([a-z]+)ch", "peach") fmt.
-
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语言遍历文件夹示例
用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语言的GOPATH与工作目录详解
GOPATH设置 go 命令依赖一个重要的环境变量:$GOPATH1 (注:这个不是Go安装目录.下面以笔者的工作目录为说明,请替换自己机器上的工作目录.) 在类似 Unix 环境大概这样设置: 复制代码 代码如下: export GOPATH=/home/apple/mygo 为了方便,应该把新建以上文件夹,并且把以上一行加入到 .bashrc 或者 .zshrc 或者自己的 sh 的配置文件中. Windows 设置如下,新建一个环境变量名称叫做GOPATH: 复制代码 代码如下: GOPA
-
Go语言正则表达式用法实例小结【查找、匹配、替换等】
本文实例讲述了Go语言正则表达式用法.分享给大家供大家参考,具体如下: Go语言的正则表达式使用很简单,示例代码: 复制代码 代码如下: package test import ( "fmt" "regexp" ) func RegixBase() { //findTest() //findIndexTest() //findStringTest() //findChinesString() //findNum
-
GO语言实现简单的目录复制功能
本文实例讲述了GO语言实现简单的目录复制功能.分享给大家供大家参考.具体实现方法如下: 创建一个独立的 goroutine 遍历文件,主进程负责写入数据.程序会复制空目录,也可以设置只复制以 ".xx" 结尾的文件. 严格来说这不是复制文件,而是写入新文件.因为这个程序是创建新文件,然后写入复制数据的.我们一般的 copy 命令是不会修改文件的 ctime(change time) 状态的. 代码如下: 复制代码 代码如下: // 一个简单的目录复制程序:一个独立的 goroutine
随机推荐
- 微信小程序 实现listview带字母滑动
- 基于MySQL到MongoDB简易对照表的详解
- 使两个iframe的高度与内容自适应,且相等
- python编程开发之textwrap文本样式处理技巧
- 跟老齐学Python之大话题小函数(1)
- Python简单操作sqlite3的方法示例
- 一个sql查询器,自动画表格填字段
- c#操作sqlserver数据库的简单示例
- Android实现购物车添加物品的动画效果
- MySQL Hash索引和B-Tree索引的区别
- Android 密码 显示与隐藏功能实例
- Powershell ISE的抽象语法树编程示例
- Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍
- 设置密码保护的SqlServer数据库备份文件与恢复文件的方法
- jquery不会自动回收xmlHttpRequest对象 导致了内存溢出
- jQuery实现只允许输入数字和小数点的方法
- 基于LayUI实现前端分页功能的方法
- 关于Android高德地图的简单开发实例代码(DEMO)
- 解析Java设计模式编程中命令模式的使用
- C语言之从字符数组中删除特定的字符