У меня все работает, но валидатор жалуется на то, что у меня записываются слова короче 6 знаков и менее, но это не так!
package com.javarush.task.task19.task1925;
/*
Длинные слова
*/
import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Solution {
public static void main(String[] args) {
try {
List<String> list = reading(args[0]);
recording(args[1], list);
} catch (IOException e) {
e.printStackTrace();
}
}
static List<String> reading(String fileName) throws IOException {
List<String> list = new ArrayList<>();
try (FileReader reader = new FileReader(fileName);
BufferedReader fileReader = new BufferedReader(reader)) {
while (fileReader.ready()) {
list.add(fileReader.readLine());
}
}
return list;
}
static void recording(String fileName, List<String> list) throws IOException {
try (FileWriter fileWriter = new FileWriter(fileName);
BufferedWriter writer = new BufferedWriter(fileWriter)) {
for (String line : list) {
String[] split = line.split(" ");
StringBuilder builder = new StringBuilder();
for (String word : split) {
if (word.length() > 6) {
builder.append(word).append(",");
}
}
try {
String builderLine = builder.toString().substring(0, builder.length() - 1);
writer.write(builderLine);
} catch (StringIndexOutOfBoundsException e){}
}
}
}
}