Эй, у меня есть этот код, который печатает всю строку из текстового файла в другой текстовый файл, строка за строкой. Это работает отлично, но я боюсь, что мы ограничены в использовании .isEmpty(). Есть ли какое-либо другое условие для второго оператора while, кроме .isEmpty()? например, подсчет размера строки и уменьшение его на размер слова в каждом цикле? Я пробовал line.length > 0, объявлял int size = line.length() - 1 и уменьшал размер на size -= word.length(); но у меня все еще есть ошибки с бесконечным циклом.
Вот мой код,
import java.io.*;
class fileStr{
public static void main(String args[]){
try{
BufferedReader rw = new BufferedReader(new FileReader("inStr.txt"));
PrintWriter sw = new PrintWriter(new FileOutputStream("outStr.txt"));
String line = rw.readLine();
while(line!=null){
String word = line.substring(0,line.indexOf(" "));
while(!word.isEmpty()){
sw.println(word);
line = line.substring(line.indexOf(" ") + 1) + " ";
word = line.substring(0,line.indexOf(" "));
}
line = rw.readLine();
}
rw.close();
sw.close();
}catch(Exception e){
System.out.println("\n\tFILE NOT FOUND!");
}
}
}
Пожалуйста, помогите, спасибо.
word.length() > 0
) не то же самое, чтоword.isEmpty()
? Вы можете попробоватьword.trim().isEmpty()
удалить все начальные или конечные пробелы... - person MadProgrammer   schedule 15.09.2014