Вкратце что делает программа:
1) переводит многострочный файл в 1 строку.
2) сплитит строку
3) обрабатывает согласно условию
4) записывает во 2 файл.
Тестил с файлом :
"12345 12 1234567
12 123
12345678 123
123456789"
Вывод: "1234567,12345678,123456789"
Заранее спасибо!
package com.javarush.task.task19.task1925;
/*
Длинные слова
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws IOException {
String fileName1=args[0],
fileName2=args[1];
FileReader fileReader=new FileReader(fileName1);
FileWriter fileWriter=new FileWriter(fileName2);
BufferedReader fReader=new BufferedReader(fileReader);
String s="";
StringBuilder stringBuilder=new StringBuilder();
int j=0;
while ((s=fReader.readLine())!=null){
String[] strings= s.split(" ");
for(int i=0; i<strings.length; i++){
char[] sb=strings[i].toCharArray();
if(sb.length>6) {
stringBuilder.append(strings[i]);
if(i==sb.length-1)
break;
stringBuilder.append(" ");
}
}
}
String itog= stringBuilder.toString();
//System.out.println(itog);
StringBuilder stringBuilderItog=new StringBuilder();
String[] stringsItog= itog.split(" ");
for(int i=0; i<stringsItog.length; i++){
char[] sb=stringsItog[i].toCharArray();
stringBuilderItog.append(stringsItog[i]);
if(i==stringsItog.length-1)
break;
stringBuilderItog.append(",");
}
fileWriter.write(stringBuilderItog.toString());
fReader.close();
fileReader.close();
fileWriter.close();
}
}