[英]What is the best way to know if a string is a long or a Guid?
我在文本文件中有一些表示对象ID的字符串,有时ID是一个很长的字符串,而另一个是Guid,我需要解析它们。
快速答案是显而易见的,例如,尝试解析Guid,但如果失败,则尝试解析长,但是。 有什么好办法( 优雅的解决方案 )来知道某个字符串是长字符串还是Guid字符串?
ee02b525-9755-4a07-a46d-37bb5b060fd2 (Guid)
-48765 (long)
提前致谢。
快速答案是显而易见的,例如,尝试解析Guid,但如果失败,则尝试解析长,但是。 有什么好办法(优雅的解决方案)来知道某个字符串是长字符串还是Guid字符串?
不行。long.TryParse和Guid.TryParse是要走的路。 另一种可能性是测试字符串是否包含-
但不在开头:
someString.IndexOf("-") > 1
这强烈表明此字符串不是Int64。 可能是个向导。 但这可能是其他任何事情。 当然,如果您知道此文件中只能包含Guid和long,则可能是一个有力的指示。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.