Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/142.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.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
C++ XML文件格式的布尔值应该写为true/false还是1/0?_C++_Xml_Xml Parsing_Xml Serialization_File Format - Fatal编程技术网

C++ XML文件格式的布尔值应该写为true/false还是1/0?

C++ XML文件格式的布尔值应该写为true/false还是1/0?,c++,xml,xml-parsing,xml-serialization,file-format,C++,Xml,Xml Parsing,Xml Serialization,File Format,经过三十年的二进制文件格式开发,我(终于)写出了一个XML文档文件格式 我已经找到了文档标题的一部分,在这里我需要写大约50个独立的布尔数据成员,我想知道:我应该把它们写为1/0还是真/假 我知道XML规范可能会有任何结果。一方面,当读回文件格式时,1/0似乎工作量更少。但是既然文件格式很小,周期也很便宜,那么让文件格式尽可能具有符号性是否被认为是合适的XML呢?如果是这样,XML是否适合对所有枚举变量执行相同的操作(输出它们的符号名和值——这可能会发生变化?) 另一方面--我正在以这种形式生成

经过三十年的二进制文件格式开发,我(终于)写出了一个XML文档文件格式

我已经找到了文档标题的一部分,在这里我需要写大约50个独立的布尔数据成员,我想知道:我应该把它们写为1/0还是真/假

我知道XML规范可能会有任何结果。一方面,当读回文件格式时,1/0似乎工作量更少。但是既然文件格式很小,周期也很便宜,那么让文件格式尽可能具有符号性是否被认为是合适的XML呢?如果是这样,XML是否适合对所有枚举变量执行相同的操作(输出它们的符号名和值——这可能会发生变化?)

另一方面--我正在以这种形式生成XML:

<FieldName>true</FieldName>
<FieldName value="true"/>
true
不是本表格:

<FieldName>true</FieldName>
<FieldName value="true"/>


在阅读了几十篇相互冲突的论文和帖子(有些是堆栈溢出)后,似乎大多数人都不赞成属性样式(例如#2)。

XML与二进制格式相比过于冗长,因此可能并不重要。但是为了便于使用和清晰,我将把它写成
true
false

您要问的基本上是XML社区中的文化约定是什么。文化习俗是做你自己的事。但是,值得注意的是,XSLT和XQuery将xs:boolean类型的值序列化为“true”或“false”

对于元素和属性,这是一个古老的概念,对于这样的简单数据,这两种形式都是完全可以接受的。只需在文档或文档系列中保持一致即可