我可以在String变量中存储特殊符号吗?

时间:2014-01-10 05:53:54

标签: java string netbeans utf-8

我有48个特殊符号,并希望将它们存储在字符串变量中。是否有可能做到这一点?如果是,请向我提供解决方案。我正在使用NetBeans IDE。

♥ ♡ ❤ ♤ ♢ ♦ ♠ ♣ ♧ ❣ ❦ ❧ ☺ ✔ > ⌂ □ ☼ ✯ ✰ ◕ ◔ ♮ ♯ ❝ ❞ Δ ☾✽ ✾ ✿ ❁ ❃ ❋ ❀ ∞ → •♥• ¤ ø „ ★ • * + Ω = ◊ ≥ ‡ › … ¤

以上是我想要存储的特殊符号,当我试着看时,

 public String symbols = "? ? ? ? ? ? ? ? ? ? ? ? ? ? > ? ? ? ?
 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? •?• ¤ ø „ ? • * + ? = ? ? ‡ › … ¤"; 

这是我的代码:

StringBuilder tweetText = new StringBuilder();
if(count_symbol > 50)
{
     count_symbol = 0;
}
String symbol_array[] = symbols.split(" ");  
tweetText.append(symbol_array[count_symbol]);
tweetText.append(" ");
count_symbol++;

请提供一些解决方案。

3 个答案:

答案 0 :(得分:3)

  

我认为你没有在项目属性中设置character encoding   UTF-8这就是特殊符号转换为问号的原因。

enter image description here

答案 1 :(得分:2)

String内部或多或少是char类型的数组。 Java中的char只是一个由两个字节组成的值,可以直接设置为int之类的值。找出这些符号的值,当然要确保使用正确的编码。如果要指定字符集,请创建包含这些值的char数组并使用String( char[] )构造函数或String( char[], Charset )构造字符串。
您可以在包中包含保存了这些符号的资源,并将其加载到带有InputStream的char数组中。这样可以省去手动输入值的一些工作。

答案 2 :(得分:2)

String escapedString =
            "\"00000000-0000-0000-0000-000000000005\"";
嘿,请尝试使用转义字符