我试图创建一些随机的int数组并将其写入Golang中的xyz.txt
文件。
如何将ids
int
数组转换为byte
数组,file.Write
接受[]byte
作为参数。实现将随机整数数组写入文本文件的正确方法是什么。
func main() {
var id int
var ids []int
var count int
f, err := os.Create("xyz.txt")
check(err)
defer f.Close()
for j := 0; j < 5; j++ {
count = rand.Intn(100)
for i := 0; i < product_count; i++ {
id = rand.Intn(1000)
ids = append(product_ids, product_id)
}
n2, err := f.Write(ids)
check(err)
fmt.Printf("wrote %d bytes\n", n2)
}
}
答案 0 :(得分:1)
您可以使用fmt.Fprint
作为此简化工作示例:
package main
import (
"bufio"
"fmt"
"math/rand"
"os"
)
func main() {
f, err := os.Create("xyz.txt")
if err != nil {
panic(err)
}
defer f.Close()
w := bufio.NewWriter(f)
defer w.Flush()
for j := 0; j < 5; j++ {
count := 4 //count := rand.Intn(100)
for i := 0; i < count; i++ {
fmt.Fprint(w, rand.Intn(1000), " ")
}
fmt.Fprintln(w)
}
}
xyz.txt
输出文件:
81 887 847 59
81 318 425 540
456 300 694 511
162 89 728 274
211 445 237 106