2014-11-27 1 views
0

У меня есть текстовый файл словаря объемом около 60000 слов. Я хотел бы прочитать в этом текстовом файле и посмотреть, есть ли у него определенное количество n слов, предоставленных пользователем. По рекомендации моего профессора я собираюсь создать метод, который расширяет массив для компенсации разных значений n. Я знаю, как это сделать. Мой вопрос в том, как я сначала читал текстовый файл и определял, имеет ли каждый из 60000 слов определенную длину n?Проверьте, имеет ли большой список слов определенную длину

Я знаю, что я должен использовать цикл и импортировать файл: (хотя я никогда не делал исключение броска)

Scanner inputFile = new Scanner(new File("2of12inf.txt")); 

for(int i = 0; i < sizeWord; i++) { 
} 

Но то, что я обычно сделать, это использовать charAt(i), и проверить, если слово имеет n много символов. Но я не могу сделать этого за 60000 слов. Предложения?

+1

Ну, есть «Сканер # hasNext'' Scanner # nextLine' и 'String # length', и вы также имеете инструкции' while'. –

+0

Вы спрашиваете, как читать слова из текстового файла или как определить их размер? –

+0

@Scott Hunter Ну, мне не нравится текстовый файл, поэтому я буду благодарен за любую обратную связь. Но моя главная проблема заключается в том, как определить размер каждого 60000 слов в текстовом файле. – hello

ответ

0
try{ 
    BufferedReader br = new BufferedReader(new FileReader(new File("2of12inf.txt"))); 
    String line; 
    while ((line = br.readLine()) != null) { 
     // process the line. 
     int lineLength = line.length(); 
     // assuming each line contains one word, do whatever you want to with this length 
    } 
} catch (Exception e) { 
    System.out.println("Exception caught! Should handle it accordingly: " + e); 
} finally { 
    be.close(); 
} 
+0

Здесь вы должны использовать инструкцию [try-with-resources] (https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html) :). – Tom

+0

О да! Спасибо, что поймал это. Try/catch всегда должен использоваться для ввода-вывода –

+0

Не нормальный блок 'try/catch', я имею в виду оператор' try-with-resources': D. Прочтите ссылку для получения дополнительной информации. – Tom

Смежные вопросы