Revision Difference
util.TableToJSON#562692
<function name="TableToJSON" parent="util" type="libraryfunc">
<description>
Converts a table to a JSON string.
⤶
<warning>All keys are strings in the JSON format, so all keys will be converted to strings!
⤶
All integers will be converted to decimals (5 -> 5.0).
⤶
See <page>util.JSONToTable</page> for the opposite function.
⤶
<warning>All keys are strings in the JSON format, so all keys of other types will be converted to strings!
⤶
All integers will be output as decimals (5 -> 5.0), since all numbers in Lua are internally floating point values.⤶
</warning>
<bug issue="3561">This will produce invalid JSON if the provided table contains nan or inf values.</bug>
</description>
<realm>Shared and Menu</realm>
<args>
<arg name="table" type="table">Table to convert.</arg>
<arg name="prettyPrint" type="boolean" default="false">Format and indent the JSON.</arg>
</args>
<rets>
<ret name="" type="string">A JSON formatted string containing the serialized data</ret>
</rets>
</function>
<example>
<description>Writes the positions and angles of every player to a JSON file called playerstuff.json.</description>
<code>
local Players = {}
for k, v in ipairs(player.GetAll()) do
Players[k] = { pos = v:GetPos(), ang = v:GetAngles() }
end
local tab = util.TableToJSON( Players ) -- Convert the player table to JSON
file.CreateDir( "jsontest" ) -- Create the directory
file.Write( "jsontest/playerstuff.json", tab) -- Write to .json
</code>
</example>