如何在Java中按字符拆分字符串?

时间:2015-04-06 00:43:33

标签: java string char

我已尝试过多次使用不同的正则表达式,但似乎都没有效果。基本上,我有一个StringTokenizer,当前正在用空格分割字符串,但我想让它按每个字符拆分。我目前的代码:

FileReader fr = new FileReader("test.txt");
BufferedReader br = new BufferedReader(fr);
StringTokenizer st = new StringTokenizer(br.readLine());

3 个答案:

答案 0 :(得分:3)

char c = reader.next().charAt(0);

这会在索引零处获取字符串的字符。字符串从索引零开始。另外,另一种选择是

for (int i = 0; i < numberOfChars; ++i){
    // get the character using charAt(i)
    // store the character using an array, as others have specified
}

请记住使用new Scanner(BufferedReader(FileReader("test.txt")));

有关详情,请参阅Take a char input from the Scanner

答案 1 :(得分:2)

  

我有一个当前用空格分隔字符串的StringTokenizer,

阅读StringTokenizer API。如果未指定分隔符,则使用默认的分隔符。

所以你需要指定所有的分隔符。

或者,更简单的方法是使用String.toCharArray()方法并遍历数组。

答案 2 :(得分:2)

如果你需要它们作为字符:

char[] characters = br.readLine().toCharArray();

如果你需要它们作为字符串:

String[] characters = br.readLine().split("");