dongmei9203 2017-04-25 02:08
浏览 237
已采纳

如何使用Golang在文件中写入整数?

  1. I generate numbers from 0 to 10
  2. I create a file
  3. And I try to write to the file by converting integers to string

But when I open the h.txt file there is nothing written

How to fix this and have the numbers written to the h.txt file?

package main

import "os"

func main() {
    for i := 0; i < 10; i++ { // Generating...

        f, _ := os.Create("h.txt") // creating...

        f.WriteString(string(i)) // writing...

        defer f.Close()
    }
}

Thanks!

  • 写回答

1条回答 默认 最新

  • douying9296 2017-04-25 02:23
    关注

    There are a few issues with your code.

    1) You're opening the file multiple times, every iteration of your loop; os.Create will truncate the file if it already exists, so you may be writing and truncating it on each iteration.

    2) You're not checking that the file opens correctly without error

    3) defer schedules code to run when the function ends, not at the end of the scope. (i.e. at the end of the iteration)

    4) You should convert the integer properly, using a conversion and checking the error: _, err := f.WriteString(fmt.Sprintf("%d",i)), and then check the error.

    Try this:

    package main
    
    import (
        "fmt"
        "os"
    )
    
    func main() {
        f, err := os.Create("h.txt") // creating...
        if err != nil {
            fmt.Printf("error creating file: %v", err)
            return
        }
        defer f.Close()
        for i := 0; i < 10; i++ { // Generating...
            _, err = f.WriteString(fmt.Sprintf("%d
    ", i)) // writing...
            if err != nil {
                fmt.Printf("error writing string: %v", err)
            }
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 unity从3D升级到urp管线,打包ab包后,材质全部变紫色
  • ¥50 comsol温度场仿真无法模拟微米级激光光斑
  • ¥15 上传图片时提交的存储类型
  • ¥15 Ubuntu开机显示器只显示kernel,是没操作系统(相关搜索:显卡驱动)
  • ¥15 VB.NET如何绘制倾斜的椭圆
  • ¥15 arbotix没有/cmd_vel话题
  • ¥15 odoo17的分包重新供应路线如何设置?可从销售订单中实时直接触发采购订单或相关单据
  • ¥15 用C语言怎么判断字符串的输入是否符合设定?
  • ¥15 通信专业本科生论文选这两个哪个方向好研究呀
  • ¥50 我在一个购物网站的排队系统排队,这个排队到号后重新定向到目标网站进行购物,但是有技术牛通过技术方法直接跳过排队系统进入目标网址购物,有没有什么软件或者脚本可以用