使用 cli Go 包读取外部文件

我正在使用 cli Go 包:https : //github.com/codegangsta/cli


package main


import (

    "fmt"

    "github.com/codegangsta/cli"

    "io/ioutil"

    "os"

)


func main() {

    app := cli.NewApp()

    app.Name = "m2k"

    app.Usage = "convert markdown to kindle"

    app.Flags = []cli.Flag{

        cli.StringFlag{

            Name:  "file",

            Value: "english",

            Usage: "language for the greeting",

        },

    }


    app.Action = func(c *cli.Context) {

        file := "default"


        if len(c.Args()) > 0 {

            file = c.Args()[0]

        }


        //fmt.Println("file %s", file)

        fmt.Println("file %s", file)


        b, err := ioutil.ReadFile(file)

        if err != nil {

            panic(err)

        }


        err = ioutil.WriteFile("output.txt", b, 0644)

        if err != nil {

            panic(err)

        }

    }


    app.Run(os.Args)

}

我是围棋初学者。所以我可能做错了什么。


我在命令行中执行此操作(我markdown.txt在目录中调用了一个文件):


~/go/io$ 去运行 io.go -file markdown.txt


但我收到此错误:


由 runtime.main 创建 /usr/lib/go/src/pkg/runtime/proc.c:221 退出状态 2


编辑:


我写信fmt.Println("file %s", file)给app.Action但没有打印出来。这是否说明了问题?


达令说
浏览 162回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go