11

I've inspected the Java class documentation for Color and found that I can generate a Color object from a hex code string (e.g. "#FFFFFF") using the Color.decode(); method.

I would like to implement the reverse process for a project I am working on, but there doesn't seem to be a method already built in to the class for this.

Is there an easy way to do this?

0

4 Answers 4

20
String.format("#%06x", color.getRGB() & 0x00FFFFFF)

The masking is used for removing the alpha component, in bits 24-31

Sign up to request clarification or add additional context in comments.

Comments

3
Color color = Color.BLUE;
Formatter f = new Formatter(new StringBuffer("#"));
f.format("%02X", color.getRed());
f.format("%02X", color.getGreen());
f.format("%02X", color.getBlue());
f.toString(); //#0000FF

Comments

1

Read this: Getting Html color codes with a JColorChooser

The answer has a method to convert a color to it's hex value.

Comments

0

There is another way. Thought I just add this alternative.

// ARGB = (255, 255, 0, 0) (Red) 
// hex -> "ffff0000"
String hex = Integer.toHexString(color.getRGB());

// Reduced to RGB: hex -> "#ff0000"
hex = "#" + hex.substring(2, hex.length());

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.