golang Golang:读取文件并使用参数写入磁盘

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang Golang:读取文件并使用参数写入磁盘相关的知识,希望对你有一定的参考价值。

package main

import (
    "io/ioutil"
    "os"
    "fmt"
)

var (
    input_filename string
    output_filename string
)

func main() {

    if len(os.Args) < 5 {
        fmt.Printf("Usage: (-i/--input) 'input_filename' (-o/--output) 'output_filename' \n")
        os.Exit(0)
    }

    for i, arg := range os.Args {
        if arg == "-i" || arg == "--input" {
            input_filename = os.Args[i+1]
            }
        if arg == "-o" || arg == "--output" {
            output_filename = os.Args[i+1]
            }
        }

    input_file_content, error := ioutil.ReadFile(input_filename)

    if error != nil {
        panic(error)
    }

    fmt.Println("File used for reading:", input_filename)

    ioutil.WriteFile(output_filename, input_file_content, 0644)
    fmt.Println("File used for writing:", output_filename)
}

如何让golang 把变量解析为json,并输出为文件。

想请哪位大侠给个嵌套的例子,把一些变量作为2层嵌套,写入Json文件。

参考技术A 1. 不管golang从json文件读取数据,还是写数据到json配置文件,都需要encoding/json包,如下:import (
"encoding/json"
)

2. 编码JSON,输出数据到json文件,有方法如下:
json.Marshal(xxx) 和 json.MarshalIndent(c, "", " ") ,两个方法的区别是,MarshalIndent(c, "", " ")方法按照json格式 缩进,也就是美化了的 可读性很高的 带缩进的 Json数据。所以只要是json格式数据,当然用第二个方法啦。
3. 具体代码如下:
c := make(map[string]interface)
c["name"] = "Gopher"
c["title"] = "programmer"
c["contact"] = map[string]interface
"home": "415.333.3333",
"cell": "415.555.5555",

以上是关于golang Golang:读取文件并使用参数写入磁盘的主要内容,如果未能解决你的问题,请参考以下文章

如何让golang 把变量解析为json,并输出为文件。

golang模块viper读取配置文件

Golang读写文件的几种方式

Golang basic_leaming文件目录操作

Golang basic_leaming文件目录操作

一行一行读取文件没有换行符golang