Go语言文件操作

Python020

Go语言文件操作,第1张

本文主要介绍了Go语言中文件读写的相关操作。

文件是什么?

计算机中的文件是存储在外部介质(通常是磁盘)上的数据集合,文件分为文本文件和二进制文件。

os.Open() 函数能够打开一个文件,返回一个 *File 和一个 err 。对得到的文件实例调用 close() 方法能够关闭文件。

为了防止文件忘记关闭,我们通常使用defer注册文件关闭语句。

Read方法定义如下:

它接收一个字节切片,返回读取的字节数和可能的具体错误,读到文件末尾时会返回 0 和 io.EOF 。 举个例子:

使用for循环读取文件中的所有数据。

bufio是在file的基础上封装了一层API,支持更多的功能。

io/ioutil 包的 ReadFile 方法能够读取完整的文件,只需要将文件名作为参数传入。

os.OpenFile() 函数能够以指定模式打开文件,从而实现文件写入相关功能。

其中:

name :要打开的文件名 flag :打开文件的模式。 模式有以下几种:

perm :文件权限,一个八进制数。r(读)04,w(写)02,x(执行)01。

gojvm目录

1、搭建go环境

2、cmd命令行参数解析

3、搜索class文件

4、添加testOption 便于单元测试

5、解析classfile文件

6、运行时数据区

7、指令集

8、解释器

9、创建Class

10、类加载器

11、对象实例化new object

12、方法调用和返回

13 类初始化

14、jvm支持数组

15、jvm支持字符串-数组扩展

16、本地方法调用

17、ClassLoader原理

18、异常处理

19、 启动jvm

java jvm根据类路径(class path)来搜索类,加载到内存

可以通过 -Xbootclasspath 修改启动类路径

参数 -classpath /-cp

go语言不需要显式实现接口

defer 确保异常及时处理

1、Entry搜索类路径

2、DirEntry 搜索目录下类路径

3、ZipEntry 搜索zip或jar文件形式类路径

4、CompositeEntry 组合类路径

5、WildcardEntry 所有通配符下类路径

Entry 类路径查找

测试类

https://github.com/yinlingchaoliu/jvmgo.git

提交标签classpath