2015-06-19 3 views
9

में कुंजी "नहीं" के साथ मानचित्र करने के लिए yaml स्ट्रिंग को कनवर्ट करने में असमर्थ है, जबकि मैं yaml स्ट्रिंग को मानचित्र में कनवर्ट करने का प्रयास कर रहा हूं, मुझे मुख्य परिवर्तन मिल रहा है।
YAML फ़ाइल: -जावा

--- 
HK: 
    isp: 
    Airtel: AirtelChennal 
    www.enemalta.com: 
    default: defaultEma 
    user1: chennal1 
    studiodefault: hkDefaultchennal 
    country: 
    DK: denmarkChennal 
    NO: chennal2 

जावा कोड: -

Yaml yaml= new Yaml(); 
Map<String,Object> map= (Map<String, Object>) yaml.load(yamlString); 

उत्पादन: -

{HK={isp={Airtel=AirtelChennal}, www.enemalta.com={default=defaultEma, user1=chennal1}, studiodefault=hkDefaultchennal, country={DK=denmarkChennal, false=chennal2}}} 

ऊपर उत्पादन झूठी में साथ "नहीं" की जगह है, लेकिन मैं जरूरत है "नहीं " ज्यों का त्यों।

अपेक्षित उत्पादन: -

{HK={isp={Airtel=AirtelChennal}, www.enemalta.com={default=defaultEma, user1=chennal1}, studiodefault=hkDefaultchennal, country={DK=denmarkChennal, NO=chennal2}}} 

उत्तर

3

इस लेख के अनुसार: http://makandracards.com/makandra/24809-yaml-keys-like-yes-or-no-evaluate-to-true-and-false

आदेश तार का उपयोग करने के 'हां' और 'नहीं' कुंजी के रूप में, आप की जरूरत उन लोगों के साथ रैप करने के लिए उद्धरण

+0

यह वास्तव में काम कर रहा है धन्यवाद @ जेपी मोरेसमौ, अन्यथा कि कोई भी स्ट्रिंग 'हां', 'नहीं' जैसी ही है। –

0

आपको अपने पार्सर को नवीनतम मानक (200 9 से 1.2!) के अनुरूप अपडेट करना चाहिए, ऐसा लगता है कि यह confor 1.1 YAML standard पर मिंग करें। और हू और नो को बुलियन के रूप में व्याख्या करें। In revision 1.2 booleanstrue या false होना चाहिए।

आप NO स्केलर को सिंगल या डबल कोट्स के साथ उद्धृत करके एक स्पष्ट तार बनाकर एक ही प्रभाव प्राप्त कर सकते हैं।