Go语言中IO操作读取文件内容

寅恪光潜 寅恪光潜 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

读取常规字节文件

1.txt

hello world
寅恪光潜
Coding...

package main

import (
	"fmt"
	"io/ioutil"
	"log"
)

var Person struct {
	Name string
	Age  int
}

func main() {
	content, err := ioutil.ReadFile("1.txt")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Println(content)
	fmt.Println(string(content))
}
/*
[104 101 108 108 111 32 119 111 114 108 100 13 10 229 175 133 230 129 170 229 133 137 230 189 156 13 10 67 111 100 105 110 103 46 46 46]
hello world
寅恪光潜
Coding...
*/

读取二进制文件

读取一个ico图标试下:https://xqdoc.imedao.com/17aebcfb84a145d33fc18679.ico

package main

import (
	"bufio"
	"encoding/hex"
	"fmt"
	"io"
	"log"
	"os"
)

var Person struct {
	Name string
	Age  int
}

func main() {
	f, err := os.Open("xq.ico")
	if err != nil {
		log.Fatal(err)
	}
	defer f.Close()
	reader := bufio.NewReader(f)
	buf := make([]byte, 256)
	for {
		_, err := reader.Read(buf)
		if err != nil {
			if err != io.EOF {
				fmt.Println(err)
			}
			break
		}
	}
	fmt.Printf("%s", hex.Dump(buf))
}

/*
00000000  29 83 ff 80 27 2e ff 7c  28 52 ff 7d 2a 2b ff 80  |)...'..|(R.}*+..|
00000010  28 20 ff 7e 29 4b ff 7d  28 a7 ff 7d 28 fd ff 7d  |( .~)K.}(..}(..}|
00000020  28 e1 ff 80 29 2c 00 00  00 00 00 00 00 00 00 00  |(...),..........|
00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000040  00 00 ff 7d 28 b7 ff 7d  28 ff ff 7d 28 ff ff 7d  |...}(..}(..}(..}|
00000050  28 ff ff 7d 28 ff ff 7d  28 fa ff 7d 27 9b ff 80  |(..}(..}(..}'...|
00000060  23 16 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |#...............|
00000070  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000080  00 00 ff 80 24 0e ff 7c  29 50 ff 7d 28 74 ff 7d  |....$..|)P.}(t.}|
00000090  28 72 ff 7e 27 55 ff 78  2d 11 00 00 00 00 00 00  |(r.~'U.x-.......|
000000a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 ff ff  |................|
000000b0  00 00 f0 1f 00 00 e3 e7  00 00 cf c3 00 00 9f 89  |................|
000000c0  00 00 97 99 00 00 b3 3d  00 00 b9 bd 00 00 bd 9d  |.......=........|
000000d0  00 00 bc cd 00 00 99 e9  00 00 91 f9 00 00 c3 f3  |................|
000000e0  00 00 e7 c7 00 00 f8 0f  00 00 ff ff 00 00 00 00  |................|
000000f0  00 00 00 00 00 00 ff 7c  25 29 ff 7d 28 d7 ff 7d  |.......|%).}(..}|
*/

 

...全文

相关推荐

评论 1
收藏 已收藏
分享
返回顶部
寅恪光潜
寅恪光潜 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
Go语言基础与进阶--寅恪光潜 200 成员 136 内容