Здравствуйте! Написал свою первую программу на Java, но работает она некорректно. Функционал:
Спрашивает слово.
Считывает файл, если слово найдено - выводит строку.
Если не найдено, записывает слово и перевод.
Программа после завершения или при работе программы начинает писать в файл "null - null" до потери пульса.
package com.company;
import java.io.*;
import java.util.ArrayList;
public class Main {
public static void main(String[] args) throws Exception {
for (int i = 0; i == 0; ) {
System.out.println("Enter the word :");
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try {
readFiler(reader.readLine());
} catch (Exception e) {
System.out.println("Файл не найден");
}
}
}
public static String readFiler(String word) throws Exception {
int count = 0;
try {
FileReader ret = new FileReader("/home/shoolcs/Desktop/test");
BufferedReader reader = new BufferedReader(ret);
String line;
while ((line = reader.readLine())!=null ) {
if ((line.indexOf(word) != -1)) {
System.out.println(line);
count++;
}
}
reader.close();
ret.close();
} catch (Exception e) {
System.out.println("No file!");
}
if(count==0){
saveFiler(word);
}
return null ;
}
private static String saveFiler (String wor ) throws Exception{
System.out.println("Add word " + wor + " in dinctionary :" );
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String translate ;
translate = reader.readLine() ;
FileWriter writerrr = new FileWriter("/home/shoolcs/Desktop/test",true);
BufferedWriter writer = new BufferedWriter(writerrr);
writer.write(wor + " - " + translate + "\n");
writer.close();
writerrr.close();
}
catch (Exception e){
System.out.println("Файл не найден");
}
return null;
}
}
Попробуйте переписать метод readFiler() с файла с использованием java.util.Scanner
что-нибудь в духе:
String currentLine = null;
while (scanner.hasNext()) {
currentString = scanner.nextLine();
}
Дополнительные примеры можно найти тут
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Всем привет! Столкнулся с такой проблемой: как изменить готовое изображение (фотографию), нарисовать на ней текст (в моем случае мне нужно...
Возник вопрос - как получить список аудио файлов с устройства и вывести на экран в диалоговом окнеПоиск в интернете не дал информации на русском...
Хочу попробовать сделать что-то вроде диспетчерской службы такси на планшеты (смартфоны)