Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法将yaml字符串转换为键为“的映射”;否";在爪哇_Java_Rest_Yaml - Fatal编程技术网

Java 无法将yaml字符串转换为键为“的映射”;否";在爪哇

Java 无法将yaml字符串转换为键为“的映射”;否";在爪哇,java,rest,yaml,Java,Rest,Yaml,当我试图将yaml字符串转换为Map时,我得到了密钥更改。 YAML文件:- --- HK: isp: Airtel: AirtelChennal www.enemalta.com: default: defaultEma user1: chennal1 studiodefault: hkDefaultchennal country: DK: denmarkChennal NO: chennal2 Java代码:- Yaml ya

当我试图将yaml字符串转换为Map时,我得到了密钥更改。
YAML文件:-

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

Yaml yaml= new Yaml();
Map<String,Object> map= (Map<String, Object>) yaml.load(yamlString);
在上面的输出中,false被替换为“NO”,但我需要“NO”

预期产出:-

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

根据这篇文章:

为了使用字符串“yes”和“no”作为键,您需要换行 引用他们的话


您应该将解析器更新为符合最新标准(2009年的1.2!)的解析器,它似乎符合。将是和否解释为布尔语。应为
true
false


您可以通过使用单引号或双引号将
NO
标量作为显式字符串来获得相同的效果。

这真的很有效,谢谢@JP Moresmau,除此之外,任何字符串都可以用于类似的“是”、“否”
{HK={isp={Airtel=AirtelChennal}, www.enemalta.com={default=defaultEma, user1=chennal1}, studiodefault=hkDefaultchennal, country={DK=denmarkChennal, NO=chennal2}}}