2016-02-05 63 views
0

我可以考虑如何使这个工作的解决方法,但我很想知道是否有解决这个特定问题的解决方案。从命令行运行转到嵌套JSON

我有这需要一个JSON字符串arguement Go程序:

go run main.go "{ \"field\" : \"value\" }" 

到目前为止没有问题。但是,如果其中一个json值是另一个json字符串,我可以从命令行运行吗?

go run main.go "{ \"json-string\" : \"{\"nestedfield\" : \"nestedvalue\"}\" }" 

看起来,添加转义字符错误地匹配了开始和结束的引号。我是否理解这是如何完成的或是否是这样(而这正是我不想要的一面)?

重申,这是一个激起我好奇心的问题 - 我意识到替代方法 - 我希望能够输入与此特定问题有关的信息。

回答

0

基于从wiredeye我不是走下参数航线反馈您的应用程序提供的配置文件名。我修改了程序运行:

go run main.go field:value field2:value json-string:"{\"nestedfield\":nestedvalue}" 

我可以遍历os.Args并获取我的程序中嵌套的json。我不直接使用标志,因为我不知道输入到程序中的输入数量,这需要我使用重复标志(不支持)或将标志解析为集合(似乎不受支持)。

感谢wiredeye

1

你为什么不只是把你的json配置的文件,并使用flag

+0

感谢您的反馈。这导致了我最终的解决方案 – Airomega