Второй день на одной задаче! Первый раз такое за все 19 уровней!
Нужна помощь зала!
Авторы, прошу давать входные данные, на которых нужно тестировать свое решение!
Не понятно, что нужно валидатору. Выход соответствует требованиям, на мой взгляд.
package com.javarush.task.task19.task1925;
/*
Длинные слова
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws IOException {
String inputData = fileBufferedReader(args[0]);
//String inputData = fileBufferedReader("d:\\1.txt");
String preparedData = prepareData(inputData);
//fileWriter("d:\\3.txt", preparedData);
fileWriter(args[1], preparedData);
}
private static String prepareData(String inputData) {
//String clearedString = inputData.replaceAll("\\p{Cntrl}", " ").trim();
String clearedString = inputData;
StringBuilder preparedString = new StringBuilder();
try {
if (!clearedString.isEmpty()) {
String[] wordsFromString = clearedString.split("\\s+");
for (int i = 0; i < wordsFromString.length; i++) {
if (wordsFromString[i].trim().length() != 0 && wordsFromString[i].length() > 6) {
preparedString.append(wordsFromString[i].trim() + ",");
}
}
}
} catch (NullPointerException e) {
return null;
}
return preparedString.toString().substring(0, preparedString.toString().lastIndexOf(",") - 1);
}
private static void fileWriter(String fileName, String inputData) {
try {
if (!fileName.isEmpty()) {
BufferedWriter writer = new BufferedWriter(new FileWriter(fileName));
writer.write(inputData);
writer.close();
}
} catch (NullPointerException e1) {
System.out.println("File name is empty");
} catch (IOException e2) {
System.out.println("Can't write the file");
}
}
private static String fileBufferedReader(String fileName) {
try {
if (!fileName.isEmpty()) {
BufferedReader fileReader = new BufferedReader(new FileReader(fileName));
StringBuilder sb = new StringBuilder();
while (fileReader.ready()) {
sb.append(fileReader.readLine());
sb.append(" ");
}
fileReader.close();
return sb.toString();
}
} catch (NullPointerException e1) {
System.out.println("File name is empty");
} catch (IOException e2) {
System.out.println("Can't read the file");
}
return null;
}
}