如何在字符串中存储颜色?

Abh*_*lar 5 .net c# string rgb colors

如果它们是人类可读格式,我想将颜色存储在字符串中,如果不是,则将它们存储在 ToArgb() 中。

颜色为红色,然后将其存储在“红色”字符串中,如果颜色是绿色的某种变体,则将其存储为“ff40ff80”。

在运行时我想将此字符串转换回 Color 类对象?

Oph*_*sky 7

Color color = Color.Red;
string colorName = color.Name; // this gives you the ability to switch back to Color through Color.FromName()
Color sameColor = Color.FromName(colorName);
Run Code Online (Sandbox Code Playgroud)


Cod*_*ray 5

你很幸运。该Color.ToString()方法将为您执行此操作:

返回值

类型: System.String

如果颜色是通过使用FromName方法或FromKnownColor方法从预定义颜色创建的,则为该颜色名称的字符串;否则,一个由 ARGB 组件名称及其值组成的字符串。

  • 从`System.String` 解析回`System.Drawing.Color` 可以用`System.Drawing.ColorTranslator.FromHtml` 来完成(不需要使用`.ToString()` 你也可以做`System .Drawing.ColorTranslator.ToHtml`) (5认同)