簡體   English   中英

java.awt.color 到 java.lang.string 轉換

[英]java.awt.color to java.lang.string conversion

我想將 java.awt.color object 轉換為字符串。

Color c = new Color(255,0,0);
System.out.print(Color.toString);

它打印 java.awt.Color[r=255,g=0,b=0]

現在我想解析這個字符串並解碼顏色名稱,例如藍色等。

我在想有沒有其他方法可以直接將此顏色轉換為字符串。

提前致謝。

編輯:我想將此顏色值存儲在數據庫中。 我應該將它存儲為字符串還是 RGB 值?

不,至少是因為:

  • 少數 RGB 組合有顏色名稱
  • java 不包含其具有區域設置支持的所有語言的顏色名稱

但你可以不這樣做。 獲取Color中的預定義常量並檢查它們中的任何一個是否具有與給定顏色相同的 RGB。 如果是這樣 - 打印名稱。

至於您添加的問題 - 將其存儲為 RGB 值而不是字符串。

您必須從商定的顏色名稱列表開始,例如這些. 然后構建一個Map<Color, String>)從中獲取名稱。

您可以使用方法getRed()getBlue()getGreen()getAlpha()來獲取顏色的組件,而不是解析從toString()返回的字符串。 您還可以將顏色與 java.awt.Color 中的 static 字段進行比較(使用Equals 。)

您可以使用 HTML4 基本和擴展顏色關鍵字。 它們應該可以使用如下表格直接從 rgb 值中獲取: http://www.w3.org/TR/css3-color/#html4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM