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

寅恪光潜
领域专家: 人工智能技术领域
2022-11-18 10:40:03

读取常规字节文件

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  |.......|%).}(..}|
*/

 

...全文
34 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
寅恪光潜 2022-11-18
  • 打赏
  • 举报
回复

跟Person结构体没有关系,这个有时候忘记删除了

198

社区成员

发帖
与我相关
我的任务
社区描述
从零开始的小白到进阶成技术达人。 一起学习,一起进步。
golanggo1.19 个人社区 贵州省·贵阳市
社区管理员
  • 寅恪光潜
  • 网络豆
  • Somnus_小凯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

Go语言集各语言优势之大成,从基础到进阶

一起学习,一起进步,成为技术达人!

试试用AI创作助手写篇文章吧