c++ - 在 Unix 中将 json 作为命令行参数传递
问题描述
我试图在 Unix 环境中将 json 字符串作为命令行参数传递给我的 c++ 应用程序。
.\SampleApp -j {\"speed\":\"15\",\"rpm\":\"100\",\"loc\":[\"-83.11\",\"42.11\"]}
我在示例应用程序中使用 getopt() 函数来解析参数。在输出我只收到速度:15。但是当我运行应用程序时
.\SampleApp -j \"speed\":\"15\",\"rpm\":\"100\",\"loc\":[\"-83.11\",\"42.11\"]
有用。我的问题是如何将带有花括号的 json 字符串正确传递给应用程序。我尝试使用转义序列,\{
但它不起作用。
解决方案
通常,当文本有双引号时,使用单引号会更容易
./SampleApp -j '{"speed":"15","rpm":"100","loc":["-83.11","42.11"]}'
或多行以提高可读性:
./SampleApp -j '
{
"speed":"15",
"rpm":"100",
"loc":["-83.11","42.11"]
}'
推荐阅读
- ios - React Native / iOS TestFlight:启动时立即崩溃
- junit - Junit Mocking 投掷空指针
- javascript - 语法错误:在节点 6 上构建 Docusaurus 时出现意外标记)
- c# - 更新 EF 字符串连接 C#
- python - 如何检查 SQLAlchemy 映射是否与现有表匹配
- security - 意外暴露了ngrok authtoken;现在怎么办?
- javascript - 使用java脚本和spring boot下载文件
- r - 根据 R 中的 FDR (Benjamini & Hochberg)` 方法调整显着性阈值 (alpha)
- python-3.x - 当条件不满足时,为什么我的代码在我的 while 循环中运行?
- python - 使用海龟图形和递归的希尔伯特曲线