我有一个我为iPhone编写的移动应用程序(Objective-C),它允许用户使用特定格式导入数据。我在Java中为Android编写了相同的应用程序,并且我有用户开始要求导入的能力。数据格式是一个便携式标准,编写这种应用程序的人必须能够导入和导出数据。如何解析Java中的这个TLV?
虽然我在Objective-C中编写了要提问的内容,但我感觉我可以通过不同的方式让自己的生活变得更轻松。所以,我想问你如何解析Java中的以下TLV。我不需要代码,只是要点。
这里的TLV格式:
<Type:Length>Value<Type:Length>Value<Type:Length>Value<end>
每条记录<
开始,以<end>
结束。 \记录内是可以接受的,零长度值是可以的。
下面是描述四种不同汽车的示例输入,请注意多行记录和零长度值。
<make:4>ford<model:7>contour<color:3>red<end>
<make:5>mazda<model:3>mpv<color:5>black<end>
<make:3>bmw
<model:3>335
<color:6>yellow
<end>
<make:7>unknown<model:0><color:4>grey<end>
一旦数据被解析,我将其插入一个SQLite数据库,以便最终通过循环每条记录的数据将导致一堆,我可以作为INSERT语句的一部分使用的字符串。
感谢您提供任何想法!
尼克
为什么不在codereview stack exchange上发布代码,以便人们可以评论/建议改进? – Mat
这是个好主意,Mat。我不知道这是可用的,我会检查出来。我在下面对Will的评论回复中给出了我现在的做法。 – Stateful
你能帮我一下如何使用目标C的TLV格式吗?你能否给我一些示例代码示例? – DShah