YAML簡單易讀的數據序列化格式
YAML介紹
YAML(YAML Ain't Markup Language)是一種可讀的數據序列化格式,常用于配置文件和數據交換。它以簡潔、易讀和易于編寫為特點,特別適合于配置文件的編寫。
YAML的語法非常簡單,使用縮進表示層級關系,通常使用兩個空格縮進來表示一級目錄。數據類型包括布爾值、數字、字符串、數組、映射等,通過特定的格式表示。
YAML有許多用途,包括配置文件、數據交換、日志記錄和文檔編寫等。它也經常與許多其他技術一起使用,如Docker、Kubernetes和Ansible等。
YAML語法
在YAML中,使用縮進來表示層級關系,而不是像JSON那樣使用大括號和方括號。這使得YAML更易讀、更易寫。
name: Reathin
age: 28
address:
city: 杭州
street: 五常街道
語法規則:
- 大小寫敏感:YAML是區分大小寫的,因此"name"和"NAME"會被視為兩個不同的鍵。
- 縮進表示層級關系:使用空格進行縮進,通常使用兩個空格縮進來表示一級目錄。縮進的空格數目不重要,但要求相同層級的元素左側對齊。
- 注釋使用#:YAML支持注釋,注釋的內容從#字符開始,直到行尾。
- 數據結構:YAML支持三種數據結構,包括對象、數組和純量。對象是一組鍵值對的集合,鍵值對之間用冒號分隔,并使用空格分隔開。數組是一組有序的值的集合,使用[]表示,值之間用逗號分隔。純量是最小的數據單位,可以是數字、字符串、布爾值等。
- 字符串表示:字符串可以使用雙引號或單引號表示,也可以使用長字符串表示法(在字符串兩側加上“|”)。字符串內部可以使用轉義字符“\”來轉義特殊字符。
- 數字表示:數字可以直接表示,如123、3.14等。
- 布爾值表示:TRUE和FALSE是布爾值的關鍵詞。
- NULL表示:使用~表示NULL。
- 嵌套結構:可以使用冒號后跟空格將一個對象嵌套在另一個對象中。
- 序列化:可以使用“---”來表示文件開頭和結尾,以及分隔多個文件。
YAML總結
YAML是一種簡單易讀讀的數據序列化格式,常用于配置文件和數據交換。它使用縮進和空格來表示數據結構,具有簡潔、易讀的特點。
常見的YAML使用場景:
- 配置文件:許多軟件和框架使用YAML格式來定義其配置文件,例如Sprintboot、Docker Compose、Kubernetes配置文件等。
- 數據傳輸:YAML可以用于在不同系統之間傳輸數據,例如RESTful API中的請求和響應數據可以使用YAML格式。
- 日志記錄:某些日志記錄系統使用YAML格式來記錄結構化的日志信息,便于后續的分析和處理。
- 測試數據:在軟件測試中,可以使用YAML格式來定義測試數據,便于管理和維護。