【发布时间】:2018-07-03 17:07:12
【问题描述】:
我有一个格式为
的字符串"SERVERID=12345\nSERVERKEY=asdasw\nSERVERAPPID=123213\n"
我已经使用strtok() 逐行解析了这一行。
有没有办法为每一行制作一个键值对?就像也许将它们存储在某种数组中?我的意思是,如果我想要SERVERID,我只说Array['SERVERID'],它会返回12345 作为值。有没有办法在C中做到这一点?
【问题讨论】:
-
没有。欢迎来到 C.
-
有(非标准)方法可以或多或少地获得结果,但不使用您建议的符号。字符串应该用双引号括起来,您需要使用函数调用来进行查找,并且您将在幕后使用结构,并且您将拥有其他函数来创建键值对数组,并添加键值对,并删除它们,等等。它会一直使用函数来完成。
-
find(dict, "SERVERID")会做吗? -
你需要用 C 编写你自己的数据结构。如果你可以用 C++ 编写它,我会使用它并使用内置的地图
-
@JonathanLeffler 有这种实现的示例代码吗?
标签: c parsing key-value keyvaluepair