Java 将HTML颜色文本转换为十六进制值
我正在开发一个Android应用程序,它使用来自网站的一些html数据。我有一些使用html颜色的文本。比如“红色”或“绿色”。有没有办法在Java中将这些字符串转换为十六进制值?字符串hexvalue=Integer.toHexString(Color.parseColor(“红色”)Java 将HTML颜色文本转换为十六进制值,java,android,html,colors,Java,Android,Html,Colors,我正在开发一个Android应用程序,它使用来自网站的一些html数据。我有一些使用html颜色的文本。比如“红色”或“绿色”。有没有办法在Java中将这些字符串转换为十六进制值?字符串hexvalue=Integer.toHexString(Color.parseColor(“红色”) //hexvalue现在是“FFFFFF 00”您可以轻松地在应用程序中添加HTML颜色列表并进行翻译。在HTML和CSS颜色规范中定义了140个颜色名称。这个 考虑到这一点,使用HashMap将颜色名称转换为
//hexvalue现在是“FFFFFF 00”您可以轻松地在应用程序中添加HTML颜色列表并进行翻译。在HTML和CSS颜色规范中定义了140个颜色名称。这个 考虑到这一点,使用HashMap将颜色名称转换为适当的十六进制代码是很简单的 您还可以使用
Color.parseColor
。这将产生一个android颜色int,它可以转换为十六进制,如下所示:
String hexColor = String.format("#%06X", (0xFFFFFF & intColor));
如果他们使用的是标准CSS“红色”和“绿色”,那么它分别相当于#FF0000(rgb(255,0,0))和#00FF00(rgb(0255,0))
您还可以在CSS标准中轻松查找命名颜色的任何十六进制值,这将返回颜色
int
int intColor = android.graphics.Color.parseColor("red") // -65536
然后您可以像这样转换为十六进制:
String hexColor = String.format("#%06X", (0xFFFFFF & intColor));
- 整数到十六进制的转换: