首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StringTokenizer多行

StringTokenizer多行
EN

Stack Overflow用户
提问于 2015-06-22 16:58:13
回答 2查看 1.6K关注 0票数 0

我有两个文件,叫做"ride.in“和"ride.out”。"ride.in“文件包含两行,一行包含字符串”组合体“,另一行包含字符串"ADEFGA”。正如我所说的,每个字符串位于不同的行上,因此“组合体”位于第一行,而"ADEFGA“位于"ride.in”文件的第二行。这是我的代码:

代码语言:javascript
复制
 public static void main(String[] args) throws IOException {
File in = new File("ride.in");
File out = new File("ride.out");
String line;
in.createNewFile();
out.createNewFile();
BufferedReader br = new BufferedReader(new FileReader(in));
PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(out)));
while ((line = br.readLine()) != null) {
    StringTokenizer st = new StringTokenizer(line);
    String sam =st.nextToken();
}
pw.close();
}
    }

我希望将组合框指定为一个令牌,将ADEFGA指定为另一个令牌,但在此代码中,组合框和ADEFGA都被分配给sam字符串。如何将组合体分配给一个字符串,将ADEFGA分配给另一个字符串?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-22 17:02:38

您不能创建变量数。

创建一个字符串数组。

变化

代码语言:javascript
复制
while ((line = br.readLine()) != null) {
    StringTokenizer st = new StringTokenizer(line);
    String sam =st.nextToken();
}

代码语言:javascript
复制
List<String> myList = new ArrayList<String>();
while ((line = br.readLine()) != null) {
    StringTokenizer st = new StringTokenizer(line);
    myList.add(st.nextToken());
}

现在myList.get(0)将有“组合体”,而myList.get(1)将有"ADEFGA“。

票数 0
EN

Stack Overflow用户

发布于 2015-06-22 17:07:55

您可以将文件中的每一行读入List<String>

代码语言:javascript
复制
List<String> words = Files.readAllLines(new File("ride.in").toPath(), Charset.defaultCharset() );

或者,您可以使用Fileutils

代码语言:javascript
复制
List<String> words = FileUtils.readLines(new File("ride.in"), "utf-8");

words现在应该包含:

“‘COMBO”,“ADEFGA”

ride.in__'s注意事项:相应地调整文件路径

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30985690

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档