我有一个.obj文件,到目前为止我一直使用凌乱的标记器来分割线条。我发现这真的很低效。
public static String getSpecificToken(String s, int t) {
Scanner tokens = new Scanner(s);
String token = "";
for (int i = 0; i < t; i++) {
if(!tokens.hasNext()) { break; }
token = tokens.next();
}
tokens.close();
return token;
}
目标文件格式看起来像这样,我很难找到最有效的方法来分割它。
v 1.4870 0.3736 2.2576
v 1.5803 0.3451 2.1859
v 1.6275 0.3111 2.2261
v 1.6343 0.0783 2.4352
v 1.5180 0.0644 2.5398
v 1.4568 0.0720 2.5205
v 1.3953 0.0795 2.5013
答案 0 :(得分:3)
只需在空格中使用String#split
split
,无需在此使用Tokenizer
。实际上,您应该尽量避免使用Tokenizer
: -
Scanner tokens = new Scanner(s);
String[] tokenArr = tokens.split("\\s+"); // Split on 1 or more space
for (String token: tokenArr) {
System.out.println(token);
}
答案 1 :(得分:3)