首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.NET GUID大写字符串格式

.NET GUID大写字符串格式
EN

Stack Overflow用户
提问于 2011-07-29 11:22:48
回答 4查看 25.9K关注 0票数 18

我需要将我的GUID格式化为虚线格式,全部大写。我知道使用myGuid.ToString("D")String.Format("{0:D}", myGuid)会得到虚线格式,但是使用大写的D而不是小写的d并不会像我想象的那样给出一个大写的GUID。有没有办法做到这一点而不做任何疯狂的事情,或者我只需要调用myGuid.ToString().ToUpper()

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-07-29 12:22:06

我只需要调用myGuid.ToString().ToUpper()

是啊。您可以努力创建一个自定义的IFormatProvider,但在这里似乎不值得这样做。

票数 18
EN

Stack Overflow用户

发布于 2011-07-29 13:45:42

请注意,定义UUID规范的RFC 4122规定,在将结构转换为字符串时,输出十六进制字符应为小写:

代码语言:javascript
复制
  The hexadecimal values "a" through "f" are output as
  lower case characters and are case insensitive on input.

这可能解释了为什么Guid结构不支持直接作为大写字符串输出。

由于忽略了ToString格式提供程序参数,因此唯一的替代方法(不需要简单地将字符串转换为大写)将是直接操作字节,同时注意保留字节顺序。简单地转换为大写(直接或通过扩展方法)可能要简单得多。

票数 21
EN

Stack Overflow用户

发布于 2011-07-29 11:34:54

我认为除了使用myGuid.ToString().ToUpper()之外,您别无选择。虽然,你可以总是写一个扩展方法,也许像ToUpperString,但是我不认为系统中内置了任何东西。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6868300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档