尝试解析枚举
我正在解析文本文件中的一些枚举值。为了简化操作,我使用如下函数:
(此处的示例代码使用 C++/CLI,但也欢迎用 C# 提供答案。)
bool TryParseFontStyle(String ^string, FontStyle% style){
try {
FontStyle ^refStyle = dynamic_cast<FontStyle^>(
Enum::Parse(FontStyle::typeid, string));
if(refStyle == nullptr)
return false;
style = *refStyle;
return true;
}
catch(Exception ^e){
return false;
}
}
现在,我需要为每个枚举类型重写类似的函数我正在解析。如何使用泛型编写一个函数来处理任何枚举类型?
更新:在这里发现了类似的问题:How to TryParse for Enum值?
I am parsing some enum values from a text file. In order to simplify things I am using functions like the following:
(The sample code here uses C++/CLI but answers in C# are also welcome.)
bool TryParseFontStyle(String ^string, FontStyle% style){
try {
FontStyle ^refStyle = dynamic_cast<FontStyle^>(
Enum::Parse(FontStyle::typeid, string));
if(refStyle == nullptr)
return false;
style = *refStyle;
return true;
}
catch(Exception ^e){
return false;
}
}
Now I need to rewrite similar functions for each enum type that I am parsing. How do I use generics to write one single function to handle any enum type?
Update: Found a similar question here: How to TryParse for Enum value?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这个方法看起来可行,并且没有使用try/catch。
来源
This method seems to work and does not use try/catch.
Source
在 C# 中:
只需用 try catch 包围它,然后就可以开始了
In c#:
Just surround that with a try catch and your set to go