JSON Utilities SL Library Documentation ¶ Company : CODESYS Title : JSON Utilities SL Version : 1.11.0.0 Categories : Application|Utils Namespace : JSON Author : CODESYS Development GmbH Placeholder : JSON_Utilities_SL Description [ 1 ] ¶ With the “JSON Utilities SL” library, data can be read and written in JSON format from a CODESYS controller. The ‘JSON Utilities SL’ library provides the following functionalities: Read JSON files (UTF-8 and UTF-16) Read JSON byte arrays Write JSON files (UTF-8 and UTF-16) Read JSON byte arrays Search for keys, values, and child and parent elements The data is stored in an array of structures. Data access and element search is performed by means of methods from the JSONData function block. The simple creation of a JSON-File can be realized with funcion block JSONBuilder . The function blocks JSONByteArrayReader and JSONFileReader read data in JSON format and save the values in the JSONData function block. Writing files and byte arrays is performed by means of the function blocks JSONFileWriter and JSONByteArrayWriter . The package ‘IIoT Libraries SL’ contains the library “JSON Utilities SL”, the sample project “JSON Utilities SL Example.project”, and a description of the programming interface in CHM format. You can find the sample project and the CHM file here: C:\Users\USERNAME\JSON Utilities SL\VERSION Note To test the examples on a CODESYS Control Win the files “test_utf16.json” and “test.json” can be copied from the target directory of the installation into the directory “c:\temp”. The sample project provides three applications to demonstrate how to use the library. Application: JSONArrayExample In this example, a JSON byte array is read and written. The data is displayed in a visualization. Application: JSONFileExample In this example, a JSON file is read and written. The data is displayed in a visualization. Application: JSONFindValueExample This example demonstrates how to search for values within a JSON file. Application: JSONDataExample This example demonstrates how to generate a JSON string based on two different examples. Contents: ¶ JSON Utilities SL Common Indices and tables ¶ [ 1 ] Based on JSON Utilities SL.library, last modified 14.08.2024, 09:21:18. LibDoc 4.5.0.0 The content file JSON Utilities SL.clean.json was generated with CODESYS V3.5 SP16 Patch 3 on 14.08.2024, 09:21:21.
JSON Utilities SL ¶ Common Enums ERROR (Enum) Encoding (Enum) JSONType (Enum) Function Blocks FindFirstValueByKey (FunctionBlock) JSONBuilder (FunctionBlock) Reset (Method) SetKey (Method) SetKeyWithArray (Method) SetKeyWithObject (Method) SetKeyWithValue (Method) SetKeyWithValueNull (Method) SetObject (Method) SetValue (Method) JSONByteArrayReader (FunctionBlock) JSONByteArrayWriter (FunctionBlock) JSONData (FunctionBlock) Clear (Method) FindAllElementsByKey (Method) FindFirstElementByKey (Method) FindFirstValueByKey (Method) GetChildren (Method) GetElementByIndex (Method) SetArray (Method) SetBool (Method) SetEmpty (Method) SetKey (Method) SetLReal (Method) SetLRealRounded (Method) SetLint (Method) SetNull (Method) SetObject (Method) SetString (Method) JSONDataFactory (FunctionBlock) Create (Method) JSONFileReader (FunctionBlock) JSONFileWriter (FunctionBlock) Functions JSONElementToString (Function) Interfaces IJSONData (Interface) Clear (Method) FindAllElementsByKey (Method) FindFirstElementByKey (Method) FindFirstValueByKey (Method) GetChildren (Method) GetElementByIndex (Method) SetArray (Method) SetBool (Method) SetKey (Method) SetLReal (Method) SetLRealRounded (Method) SetLint (Method) SetNull (Method) SetObject (Method) SetString (Method) Params GParams (ParamList) Structs JSONElement (Struct) JSONValue (Union)
Common ¶ Enums ERROR (Enum) Encoding (Enum) JSONType (Enum) Function Blocks FindFirstValueByKey (FunctionBlock) JSONBuilder (FunctionBlock) Reset (Method) SetKey (Method) SetKeyWithArray (Method) SetKeyWithObject (Method) SetKeyWithValue (Method) SetKeyWithValueNull (Method) SetObject (Method) SetValue (Method) JSONByteArrayReader (FunctionBlock) JSONByteArrayWriter (FunctionBlock) JSONData (FunctionBlock) Clear (Method) FindAllElementsByKey (Method) FindFirstElementByKey (Method) FindFirstValueByKey (Method) GetChildren (Method) GetElementByIndex (Method) SetArray (Method) SetBool (Method) SetEmpty (Method) SetKey (Method) SetLReal (Method) SetLRealRounded (Method) SetLint (Method) SetNull (Method) SetObject (Method) SetString (Method) JSONDataFactory (FunctionBlock) Create (Method) JSONFileReader (FunctionBlock) JSONFileWriter (FunctionBlock) Functions JSONElementToString (Function) Interfaces IJSONData (Interface) Clear (Method) FindAllElementsByKey (Method) FindFirstElementByKey (Method) FindFirstValueByKey (Method) GetChildren (Method) GetElementByIndex (Method) SetArray (Method) SetBool (Method) SetKey (Method) SetLReal (Method) SetLRealRounded (Method) SetLint (Method) SetNull (Method) SetObject (Method) SetString (Method) Params GParams (ParamList) Structs JSONElement (Struct) JSONValue (Union)
Enums ¶ ERROR (Enum) Encoding (Enum) JSONType (Enum)
ERROR (ENUM) ¶ TYPE ERROR : JSON Errors InOut: Name Initial Comment NO_ERROR 0 No error INDEX_OUT_OF_BOUNDS 1 Array index was out of bounds NOT_FOUND 2 The requested element can not be found NULL_POINTER 3 Null pointer MAX_STRING_SIZE_EXCEEDED 4 Max size of Strings exceeded. READ_ERROR 5 Read error INVALID_HANDLE 6 Invalid file handle FILE_OPEN_ERROR 7 File open error INVALID_ENCODING 8 Invalid encoding WRITE_ERROR 9 Write error UNKNOWN_JSON_TYPE 10 Unknown json type MAX_FILE_SIZE_EXCEEDED 11 Max size of file exceeded. INVALID_DECIMAL_PLACE 12 Decimal place is < 0 MAX_OBJECT_DEPTH_EXCEEDED 13 Maximum object depth g_diMaxDepth exceeded INVALID_KEY_PARENT 14 Parent of a key must be an object. INVALID_VALUE_PARENT 15 Parent of a value must be an array or a key. INVALID_LICENSE 16 No valid license found or demo mode has expired. INVALID_STRUCTURE 17 Invalid JSON structure NOTSUPPORTED_DATATYPE 18 Datatype is not supported
Encoding (ENUM) ¶ TYPE Encoding : Types of encoding Attributes: qualified_only InOut: Name Initial Comment UTF_8 0 UTF-8 encoding UTF_16 1 UTF-16 encoding
JSONElementToString (FUN) ¶ FUNCTION JSONElementToString : ERROR Converts a JSON element to WSTRING. InOut: Scope Name Type Comment Return JSONElementToString ERROR Input element JSONElement The element to convert Inout wsResult WSTRING(GParams.g_diMaxStringSize) The string representation of an element
Interfaces ¶ IJSONData (Interface) Clear (Method) FindAllElementsByKey (Method) FindFirstElementByKey (Method) FindFirstValueByKey (Method) GetChildren (Method) GetElementByIndex (Method) SetArray (Method) SetBool (Method) SetKey (Method) SetLReal (Method) SetLRealRounded (Method) SetLint (Method) SetNull (Method) SetObject (Method) SetString (Method)
IJSONData (ITF) ¶ INTERFACE IJSONData Interface for JSONData Methods: Clear FindAllElementsByKey FindFirstElementByKey FindFirstValueByKey GetChildren GetElementByIndex SetArray SetBool SetKey SetLReal SetLRealRounded SetLint SetNull SetObject SetString Structure: Clear (Method) FindAllElementsByKey (Method) FindFirstElementByKey (Method) FindFirstValueByKey (Method) GetChildren (Method) GetElementByIndex (Method) SetArray (Method) SetBool (Method) SetKey (Method) SetLReal (Method) SetLRealRounded (Method) SetLint (Method) SetNull (Method) SetObject (Method) SetString (Method)
Params ¶ GParams (ParamList)