2021-07-10

利用go语言读取文件,将读到的数据以新的格式写入到新的文件中

package main
import (
	"encoding/json"
	"fmt"
	"io/ioutil"
	"os"
	"strconv"
)

func main()  {
	fl, err := os.OpenFile("./UpdateData.txt", os.O_APPEND|os.O_CREATE, 0644)
	var message []Message
	var data []Date
	file,_:= ioutil.ReadFile("H:\\goProject\\src\\test\\github.com\\zhao\\test\\main\\data.txt")

	_ = json.Unmarshal(file,&data)
	var k = 0

	if err != nil {
		return
	}
	defer fl.Close()

	for j := range data {
		s,_ :=json.Marshal(data[j].Messages)
		_ = json.Unmarshal(s, &message)
		for i := range message {
			fl.Write([]byte(message[i].Cid+"\t"+strconv.FormatInt(message[i].Height, 10)+"\t" + strconv.FormatInt(message[i].Timestamp, 10)+"\t" +message[i].From+message[i].To+"\t"+message[i].From+"\t"+message[i].Value+message[i].From+"\t"+message[i].Method+"\n"))
			k++
		}
	}
	fmt.Print("文件写入完成\n")
	fmt.Printf("一共写了%d条数据", k)
}

type Date struct {
	TotalCount    int64 `json:"totalCount"`
	Messages		interface{}   `json:"messages"`
	Methods			[]string	`json:"methods"`
}

type Message struct {
	Cid				string		`json:"cid"`
	Height			int64	`json:"height"`
	Timestamp		int64   `json:"timestamp"`
	From			string `json:"from"`
	To				string `json:"to"`
	Nonce			int64 `json:"nonce"`
	Value			string `json:"value"`
	Method			string `json:"method"`
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值