VYaml | Biblioteca yaml súper rápida y con poca memoria

1. Introducción

Repositorio oficial de github
YAML: YAML no es un lenguaje de marcado (YAML no es un lenguaje de marcado).
Utilice Unity2021.3 o posterior.
Instale a través del Administrador de paquetes de Unity: https://github.com/hadashiA/VYaml.git?path=VYaml.Unity/Assets/VYaml#0.13.1
ps: .yaml o .yml es el sufijo de archivo de este formato.

2. Descripción

2.1 Gramática

  • # indica un comentario de una sola línea, no se admiten comentarios de varias líneas
  • Utilice espacios para sangría para indicar relaciones jerárquicas, y los mismos niveles deben estar alineados
  • Distingue mayúsculas y minúsculas
  • Utilice - para indicar el comienzo del documento y utilice... para indicar el final del documento.
  • Use > para indicar una nueva línea, use | también para indicar un cambio pero conserve el carácter de nueva línea

2.2 tipos de datos

  • Objeto: una colección de valores-clave, como mapeo/hashes/diccionario
  • Matriz: Valores dispuestos en orden, como secuencia/lista
  • Escalares: un único valor indivisible

2.3 Objetos

El par clave-valor del objeto utiliza una estructura de dos puntos para representar clave: valor, y se debe agregar un espacio después de los dos puntos. También puede usar la clave: {k1: v1, k2: v2,...}
para un formato de objeto más complejo. Puede usar un signo de interrogación más un espacio para representar una clave compleja y dos puntos más un espacio para representar un valor.

2.4 Matriz

Las líneas que comienzan con - representan una matriz

2.5 Escalar

string: 这是字符串
boolean: 这是布尔值
int: 这是整数
float: 这是浮点数
null: 这是Null
date: 这是时间,格式必须是yyyy-MM-dd
datetime: 这是日期,2023-07-10T09:00:00+08:00,时间和日期直接用T连接,最后使用+代表时区

2.6 Cotizaciones

& se usa para establecer un punto de anclaje, << significa fusionar con los datos actuales y * se usa para hacer referencia al punto de anclaje.

common: &id001
    name: 张三
    sex: man

math:
    <<: *id001
    score: 100

history: 
    <<: *id001
    score: 95

Equivalente a:

common: 
    name: 张三
    sex: man

math:
    name: 张三
    sex: man
    score: 100

history: 
    name: 张三
    sex: man
    score: 95

3. uso

Ver la dirección oficial de aprendizaje personal ReadMe

La serialización de objetos se logra mediante Serialize y SerializeToString, y la deserialización de cadenas se logra mediante Deserialize y DeserializeAsync.
PD: aprenda estructuras más complejas usted mismo ~

Supongo que te gusta

Origin blog.csdn.net/itsxwz/article/details/131633550
Recomendado
Clasificación