Skip to main content

Load plist data (plist.load)

Declaration

tab = plist.load(plistData)

Parameters

  • plistData
    String. The raw plist data to load.

Returns

  • tab
    Table or nil. On success, returns a table representing the plist tree; otherwise nil.

Notes

The inverse of plist.dump: convert plist data into a Lua table.
Non-generic data types are not supported and will be ignored.

Examples

-- Example 1 (OpenStep format)
local jtmp = plist.load([[
{
arr = (
46,
99,
7,
);
dict = {
a = 55;
b = 65;
c = 9;
};
}
]])
sys.alert(jtmp.arr[1]) -- 46
sys.alert(jtmp.dict.c) -- 9

-- Example 2 (XML format)
local xtmp = plist.load([[
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>arr</key>
<array>
<string>46</string>
<string>99</string>
<string>7</string>
</array>
<key>dict</key>
<dict>
<key>a</key>
<string>55</string>
<key>b</key>
<string>65</string>
<key>c</key>
<string>9</string>
</dict>
</dict>
</plist>
]])
sys.alert(xtmp.arr[1]) -- 46
sys.alert(xtmp.dict.c) -- 9

Note: Uses sys.alert