如何将int转换为xml类型gDay的字符串?
示例:
var day = 1;
var month = 1;
var year = 2000;
var xElement = new XElement(
"Day",
new XAttribute("Day", ConvertToGDay(day)),
new XAttribute("Month", ConvertToGMonth(month)),
new XAttribute("Year", ConvertToGYear(year))
);
xElement必须如此:
<Day Day="---01" Month="--01--" Year="2000" />
答案 0 :(得分:1)
您似乎引用了XML Schema gDay和gMonth类型,它们代表了重复发生的事件。根据gDay和gMonth的规范,它们的表示形式为---DD
和{{1 }}
您可以使用int.ToString或String.Format与a format string生成用短划线填充的字符串,例如:
--MM
在
时返回3.ToString("---00")
---03
返回11.ToString("--00")
。
您不需要--11
的特殊格式,除非您打算在1000之前过年。在这种情况下,您可以使用gYear
。
使用ToString("0000")
的等效语句将是:
String.Format
等,或者,通过在C#6中使用字符串插值,
String.Format("---{0:00}",day);
String.Format("--{0:00}",month);
String.Format允许您为其他类型生成表示,例如$"---{day:00}"
$"--{month:00}"
您使用gMonthDay
或String.Format("--{0:00}-{1:00}",month,day)