Enum.Format(或< enum> .ToString())有一个可选的格式参数,允许您指定不同的格式选项。对于带有位标记枚举的“G”或“F”,它输出“这些常量名称的分隔符分隔列表”。
至少在我的系统上,我得到一个以逗号空格分隔的列表。我想知道的是,如果您可以通过格式字符串或通过我未遇到的其他方法更改分隔符。 (具体来说,我想要一个以管道分隔的列表。)
当然,我总是可以在输出上做一个字符串替换,但如果有预先更改分隔符的选项,那就更好了。
答案 0 :(得分:3)
我不这么认为,根据http://msdn.microsoft.com/en-us/library/c3s1ez6e.aspx,他们将以逗号分隔。您必须在逗号转换后执行替换。你可以这样做:
var sb = new StringBuilder(YourEnum.ToString("F"));
sb.Replace(",", "|");