Sto usando la funzione:
i:=Sysfread(ADR(doorJSONConf), TO_INT(SIZEOF(doorJSONConf)), 1, Fp);
Dove doorJSONConf è dichiarata come
doorJSONConf : STRING[ 300 ]; (* JSON object *)
Il file originale contiene:
{ "door": 1, "name": "LOC. A", "interlock": 2, "emergency": 2, "privacy": 0, "recovery": [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "semaphore": [9,9,210,100,18,82,98,210,210], "to_dooropen": 60, "configure": 1 }
In totale 279 caratteri, leggo però dalla funzione Sysread
'{ "door": 2, "name": "LOC. B", "interlock": 2, "emergency": 2, "privacy": 0, "recovery": [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "semaphore": [9,9,210,100,18,82,98,2ѽÃ'
Pur tornandomi 279 come caratteri letti?
Ci sono delle limitazioni sulla stringa da leggere o accorgimenti ?