Engleză: to SERIALIZE = a serializa
serialize ( variabilă_tablou )
serialize ( { x1, y1, x2, y2, x3, y3 ... } )
Întoarce șir_de_caractere
Instrucțiunea Serialize transformă o variabilă de tip tablou într-un sir de caractere (serializare). Aceasta memorează dimensiunile tabloului, tipul și valoarea fiecărui element din tablou. Funcția Unserialize are un efect invers, transformând un șir “serializat” înapoi într-un tablou sau într-o listă de elemente. Deseori programatorii creează un șir serializat astfel încât să poată salva valorile dintr-un tablou într-un fișier sau într-o bază de date.
Șirul de caractere reprezentând datele unui tablou este o serie de valori separate prin semnul “:” (două puncte). Prima valoare din șir reprezintă numărul de rânduri, iar a doua numărul de coloane. Un tablou unidimensional va avea un singur rând (1), cu lungimea memorată în a doua valoare. Apoi urmează elementele tabloului. Primul caracter al fiecărei valori conține un caracter marker care definește tipul de date ('0' - valoare nealocată,' 1' - număr întreg, '2' - număr cu zecimale și' 3' - șir de caractere), urmat de valoarea elementului. Șirurile de caractere sunt convertite în hexazecimal astfel încât orice caractere Unicode sau caractere speciale vor fi stocate fără modificări. Șirurile întoarse conținând datele serializate vor conține NUMAI caracterele ':', '.', '0' - '9' și 'a' - 'f'.
Tabloul {1,2,3,4,5.555,“șase”} ar fi serializat în “1:6:11:12:13:14:25.555:3c899617365”, iar tabloul 1_2_3_4 ar fi serializat în “2:2:11:12:13:14”.
dim a(3,4) a[0,0] = 0 a[1,1] = 1 a[2,2] = 2 a[0,1] = 'șir de caractere cu "ghilimele"' a[1,2] = 1.234 chestii = serialize(a[]) print chestii dim c = unserialize(chestii) # tabloul c este o copie identica a tabloului a
va afișa
3:4:10:3c89969722064652063617261637465726520637520226768696c696d656c6522:0:0:0:11:21.234:0:0:0:12:0
1.99.99.66 | Adăugată în acestă versiune |