Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Прочесть текстовый файл, Прочесть текстовый файл 
V
    Опции темы
merfi
Дата 30.3.2009, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 143
Регистрация: 16.3.2005

Репутация: нет
Всего: нет



Накарябал примерно следющее
Код

public class SetTest {
    public static void main(String[] args) {
        Set<String> words = new HashSet<String>(59999);
        long totalTime = 0;
        try{            
            BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
            String line;
            while((line=in.readLine()) != null){
                StringTokenizer tokenizer = new StringTokenizer(line);
                while(tokenizer.hasMoreTokens()){
                    String word = tokenizer.nextToken();
                    long callTime = System.currentTimeMillis();
                    words.add(word);
                    callTime = System.currentTimeMillis() - callTime;
                    totalTime += callTime;
                }
            }            
        }
        catch(IOException e){
            System.out.println("Error" + e);
        }
        Iterator iter = words.iterator();
        while(iter.hasNext())
            System.out.println(iter.next());
        System.out.println(words.size() + " distinct words. " + totalTime + " milliseconds");
    }
}


Все вроде бы нормально 
Не получается прочесть из текстового файла Там одни квадратики
На строчке while((line=in.readLine()) != null) все затыкается 
файл alice.txt передается main как параметр
Не подскажите в чем грабля



Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  alice.txt 163,60 Kb
--------------------
Стремитесь к совершенству! Неуклонно идите вперед! Но помните, что Ковчег сделал любитель а Титаник построили профессионалы
PM MAIL   Вверх
anbal
Дата 30.3.2009, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 15.9.2008

Репутация: нет
Всего: нет



Дело в том, что когда Вы выполняете  в цикле in.readLine то считываются данные из консоли, а не из файла.

Попробуйте так
Код

public static void main(String[] args) {
        Set<String> words = new HashSet<String>(59999);
        long totalTime = 0;
        try {
            BufferedReader in = new BufferedReader(new InputStreamReader(
                    System.in));
            String fileName = in.readLine();
            fileName = fileName.trim();
            File f = new File(fileName);
            FileInputStream fis = new FileInputStream(f);
            BufferedReader bf = new BufferedReader(new InputStreamReader(fis));
            String line;
            while ((line = bf.readLine()) != null) {
                StringTokenizer tokenizer = new StringTokenizer(line);
                while (tokenizer.hasMoreTokens()) {
                    String word = tokenizer.nextToken();
                    long callTime = System.currentTimeMillis();
                    words.add(word);
                    callTime = System.currentTimeMillis() - callTime;
                    totalTime += callTime;
                }
            }
        } catch (IOException e) {
            System.out.println("Error" + e);
        }
        Iterator<String> iter = words.iterator();
        while (iter.hasNext())
            System.out.println(iter.next());
        System.out.println(words.size() + " distinct words. " + totalTime
                + " milliseconds");
    }


PM MAIL   Вверх
merfi
Дата 31.3.2009, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 143
Регистрация: 16.3.2005

Репутация: нет
Всего: нет



Спасибо работает

Добавлено через 35 секунд
YES
--------------------
Стремитесь к совершенству! Неуклонно идите вперед! Но помните, что Ковчег сделал любитель а Титаник построили профессионалы
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0408 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.