YAML文件

簡(jiǎn)介

YAML:YAML Ain't Markup Language 另一種標(biāo)記語言。(YAML不是一種置標(biāo)語言)
但為了強(qiáng)調(diào)這種語言以數(shù)據(jù)做為中心啥箭,而不是以置標(biāo)語言(也就是說標(biāo)記語言酒繁,像XML皮钠, HTML等)為重點(diǎn)识樱,而用返璞詞重新命名。
它是一種直觀的能夠被電腦識(shí)別的數(shù)據(jù)序列化格式猴贰,是一個(gè)可讀性高并且容易被人類閱讀对雪,容易和腳本語言交互,用來表達(dá)資料序列的編程語言米绕。

它是一種直觀的能夠被電腦識(shí)別的數(shù)據(jù)序列化格式瑟捣,是一個(gè)可讀性高并且容易被人類閱讀,容易和腳本語言交互栅干,用來表達(dá)資料序列的編程語言迈套。


格式

數(shù)據(jù)結(jié)構(gòu)可以用類似大綱的縮排方式呈現(xiàn),結(jié)構(gòu)通過縮進(jìn)來表示碱鳞,連續(xù)的項(xiàng)目通過減號(hào)-來表示桑李,map結(jié)構(gòu)里面的key/value對(duì)用冒號(hào):來分隔。樣例如下:

house:
  family:
    name: Doe
    parents:
      - John
      - Jane
    children:
      - Paul
      - Mark
      - Simone
  address:
    number: 34
    street: Main Street
    city: Nowheretown
    zipcode: 12345

字串不一定要用雙引號(hào)標(biāo)識(shí)窿给;
在縮排中空白字符的數(shù)目并不是非常重要贵白,只要相同階層的元素左側(cè)對(duì)齊就可以了(不過不能使用TAB字符);
允許在文件中加入選擇性的空行崩泡,以增加可讀性禁荒;
在一個(gè)檔案中,可同時(shí)包含多個(gè)文件角撞,并用“——”分隔呛伴;
選擇性的符號(hào)“...”可以用來表示檔案結(jié)尾(在利用串流的通訊中,這非常有用谒所,可以在不關(guān)閉串流的情況下热康,發(fā)送結(jié)束訊號(hào))。

單行縮寫:

YAML也有用來描述好幾行相同結(jié)構(gòu)的數(shù)據(jù)的縮寫語法百炬,數(shù)組用'[]'包括起來褐隆,hash用'{}'來包括污它。因此剖踊,上面的這個(gè)YAML能夠縮寫成這樣:

house:
  family: { name: Doe, parents: [John, Jane], children: [Paul, Mark, Simone] }
  address: { number: 34, street: Main Street, city: Nowheretown, zipcode: 12345 }

適用場(chǎng)景:

1)腳本語言
由于實(shí)現(xiàn)簡(jiǎn)單庶弃,解析成本很低,YAML特別適合在腳本語言中使用德澈。列一下現(xiàn)有的語言實(shí)現(xiàn):Ruby歇攻,Java,Perl梆造,Python缴守,PHP,OCaml镇辉,JavaScript屡穗,除了Java,其他都是腳本語言忽肛。
2)序列化
YAML比較適合做序列化村砂。因?yàn)樗撬拗髡Z言數(shù)據(jù)類型直轉(zhuǎn)的。
3)配置文件
YAML做配置文件也不錯(cuò)屹逛。寫YAML要比寫XML快得多(無需關(guān)注標(biāo)簽或引號(hào))础废,并且比ini文檔功能更強(qiáng)。
比如Ruby on Rails的配置就選用的YAML罕模。對(duì)ROR而言评腺,這很自然,也很省事.
由于兼容性問題淑掌,不同語言間的數(shù)據(jù)流轉(zhuǎn)建議不要用YAML.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蒿讥,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子抛腕,更是在濱河造成了極大的恐慌诈悍,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件兽埃,死亡現(xiàn)場(chǎng)離奇詭異侥钳,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)柄错,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門舷夺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人售貌,你說我怎么就攤上這事给猾。” “怎么了颂跨?”我有些...
    開封第一講書人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵敢伸,是天一觀的道長。 經(jīng)常有香客問我恒削,道長池颈,這世上最難降的妖魔是什么尾序? 我笑而不...
    開封第一講書人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮躯砰,結(jié)果婚禮上每币,老公的妹妹穿的比我還像新娘。我一直安慰自己琢歇,他們只是感情好兰怠,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著李茫,像睡著了一般揭保。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上魄宏,一...
    開封第一講書人閱讀 49,749評(píng)論 1 289
  • 那天掖举,我揣著相機(jī)與錄音,去河邊找鬼娜庇。 笑死塔次,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的名秀。 我是一名探鬼主播励负,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼匕得!你這毒婦竟也來了继榆?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤汁掠,失蹤者是張志新(化名)和其女友劉穎略吨,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體考阱,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡翠忠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了乞榨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片秽之。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖吃既,靈堂內(nèi)的尸體忽然破棺而出考榨,到底是詐尸還是另有隱情,我是刑警寧澤鹦倚,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布河质,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏掀鹅。R本人自食惡果不足惜散休,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望淫半。 院中可真熱鬧溃槐,春花似錦匣砖、人聲如沸科吭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽对人。三九已至,卻和暖如春拂共,著一層夾襖步出監(jiān)牢的瞬間牺弄,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來泰國打工宜狐, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留势告,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓抚恒,卻偏偏與公主長得像咱台,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子俭驮,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容