我试图将字符串分成char数组。我有一个程序将char数组(7个字符)从二进制转换为ASCII文本。所以我要做的是将一个字符串分解为'Arduino代码'或C,C ++或Java中的7个字符的char数组。有什么建议?谢谢!
编辑:
以下是我正在使用的程序:
String getText(String str) {
String text = "";
char bits[] = "1001000";
char new_char = 0;
for (int i = 7; i >= 0; i--)
{
int current_bit = bits[i] - '0';
new_char |= current_bit << (7-i);
}
text += (String) new_char + "";
return text;
}
答案 0 :(得分:7)
您可以使用:
String s = "java";
char[] ch = s.toCharArray();
<强>更新强>
好吧,在我的声望列表中看到红色(-2)点后,我正在看这篇文章。令我惊讶的是,这个问题与我所回答的内容有所不同。现在,在阅读了已编辑的问题之后,我发布了新答案。您可以使用Integer.parseInt()
方法在 Java 中实现您的目标。以下是如何使用此方法的简短演示:
class BinaryToWords
{
static String returnString(String input)
{
String parts[] = input.split("\\s+");
StringBuilder sBuilder = new StringBuilder();
for (String part : parts)
{
int i = Integer.parseInt(part, 2);//Parses the string argument(part) as a signed integer in the radix(2).
char ch = (char)i;
sBuilder.append(String.valueOf(ch));
}
return sBuilder.toString();
}
public static void main(String[] args)
{
String binary = "1001000 1100101 1101100 1101100 1101111 100000 1010111 1101111 1110010 1101100 1100100";//Input the binary format.
System.out.println(returnString(binary));
}
}
上述代码的输出是:
Hello World
您也可以检查其他输入。并告诉我它是否适用于所有可接受的输入。
答案 1 :(得分:-1)