我有一个程序将从我服务器上的.plist中接收显示在其中的信息。但是,我将为PC制作这个,我正在使用Java这样做。 Plist文件不是传统的XML,因此常见的XML解析库不起作用。我找不到任何plist特定的解析器,所以我迷失了如何继续。我认为我的选择方式是:
a)找到plist文件的解析器
b)使用常规XML解析器
进行解决方法c)更改程序从(不需要的)
获取数据的文件有没有其他人使用Objective-C以外的其他语言使用plist?
答案 0 :(得分:3)
正如@Jochen Bedersdorfer指出的那样,.plist
文件是具有格式良好的DTD的XML。使用plutil
将它们从二进制转换为文本格式。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
附录:在评论中,你问了
当我拿到它时,它不是文本形式吗?
不一定。这是关于这个主题的一些history。
答案 1 :(得分:3)
消除任何混淆:
plist
文件可以是XML格式,也可以是二进制格式。 xmllint
。 <dt>title</dt><dd>description</dd>
。plutil
将二进制plist转换为XML plist。在通过网络发送之前将其转换为XML。key
和string
。制作包含这些对的哈希。然后你会根据密钥获得字符串。