私は行うべきことがあります。複数行のテキストファイルをロードし、コンソールにテキストを印刷し、テキストを大文字に変換して別のテキストファイルに保存します。ストリームを使用してファイルをロードして処理する
できるだけシンプルにしたいので、私はストリームフォームjava 8を使用しようとしました。それを続ける方法はわかりません。 1つの選択肢は、ストリームをリストに変換してそれを処理することですが、行を削除し、テキスト全体が1行に表示されます。私の選択肢は何ですか?
私は行うべきことがあります。複数行のテキストファイルをロードし、コンソールにテキストを印刷し、テキストを大文字に変換して別のテキストファイルに保存します。ストリームを使用してファイルをロードして処理する
できるだけシンプルにしたいので、私はストリームフォームjava 8を使用しようとしました。それを続ける方法はわかりません。 1つの選択肢は、ストリームをリストに変換してそれを処理することですが、行を削除し、テキスト全体が1行に表示されます。私の選択肢は何ですか?
ファイルに追加すると、あなたに残します:)
Files.lines(Paths.get(fileName))
.peek(System.out::println)
.map(String::toUpperCase)
.forEach(line-> //*add to file*//)
Stream<String> stream = Files.lines(Paths.get(fileName));
PrintStream output = new PrintStream(new FileOutputStream("output.txt"));
stream.map(String::toUpperCase).forEach(output::println);
// and don't forget to close
stream.close();
output.close();
確かに、私は順序を修正しました。 – Beri