YAML 字符流

2022-12-06 17:19 更新

在YAML中,將了解如下各種字符流

  • 指令
  • 文件邊界標記
  • 文件
  • 完整流

在本章中,將詳細介紹和學(xué)習(xí)它們。

1. 指令

指令是YAML處理器中使用的基本指令。 指令是表示詳細信息,如注釋,不會反映在序列化樹中。 在YAML中,無法定義私有指令。 本節(jié)討論各種類型的指令及相關(guān)示例 -

保留指令保留指令初始化為三個連字符(---),如下例所示。 保留的指令將轉(zhuǎn)換為JSON的特定值。

%YAML 1.1
--- !!str
"foo"

2. YAML指令

YAML指令是默認指令。 如果以JSON格式轉(zhuǎn)換,則fetched值包含前綴和終止字符中的正斜杠字符。

%YAML 1.1
---
!!str "foo"

3. 文件邊界標記

YAML使用這些標記允許在一個流中包含多個文檔。 這些標記專門用于傳達YAML文檔的結(jié)構(gòu)。 請注意,以---開頭的行用于啟動新文檔。

以下代碼通過示例解釋了這一點 -

%YAML 1.1
---
!!str "foo"
%YAML 1.1
---
!!str "bar"
%YAML 1.1
---
!!str "baz"

4. 文件

YAML文檔被視為單個本機數(shù)據(jù)結(jié)構(gòu),表示為單個根節(jié)點。 YAML文檔中的演示詳細信息(如指令,注釋,縮進和樣式)不被視為其中包含的內(nèi)容。

YAML中使用了兩種類型的文檔。 它們在本節(jié)中解釋 -

明確的文件它從文檔開始標記開始,然后是根節(jié)點的表示。 YAML顯式聲明的示例如下 -

---

some: yaml

...

它包括一個明確的開始和結(jié)束標記,在給定的例子中是---和......。 在轉(zhuǎn)換JSON格式的指定YAML時,得到如下所示的輸出 -

{
   "some": "yaml"
}

隱含文件這些文檔不以文檔開頭標記開頭。 觀察下面給出的代碼 -

fruits:
   - Apple
   - Orange
   - Pineapple
   - Mango

以JSON格式轉(zhuǎn)換這些值,將輸出作為一個簡單的JSON對象,如下所示 -

{
   "fruits": [
      "Apple",
      "Orange",
      "Pineapple",
      "Mango"
   ]
}

5. 完整流

YAML包括一個稱為字符流的字節(jié)序列。 該流以包含表示字符編碼的字節(jié)順序的前綴開始。 完整流以包含字符編碼的前綴開頭,后跟注釋。

完整流(字符流)的示例如下所示 -

%YAML 1.1
---
!!str "Text content\n"



以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號