Garry's Mod Wiki

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>