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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> jTextArea.Вывод текста из файла. jTextArea.Вывод текста из файла. 
V
    Опции темы
izver84
Дата 13.3.2008, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Здрасте.
Подскажите как вывести в jTextArea данные из *.txt. Если можно пример со следующим алгоритмом:
1)нажымаю кнопку
2)отображаются данные в jTextArea
 smile 


Это сообщение отредактировал(а) izver84 - 13.3.2008, 19:06


--------------------
Если новая программа с первого раза компилируется без ошибок, значит, она написана принципиально неправильно. 
PM MAIL   Вверх
knox
Дата 13.3.2008, 21:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Код

public void openFile(String filename){
        File file;
        FileReader file_reader = null;
        try{
            file = new File(filename);
            file_reader = new FileReader(file);
            char buffer[] = new char[4096];
            int len;
            jTextArea.setText("");
            while ((len = file_reader.read(buffer)) != -1){
                String s = new String (buffer, 0, len);
                jTextArea.append(s);
            }
            jTextArea.setCaretPosition(0);
        }catch (IOException e){
            JOptionPane.showMessageDialog(null,"Невозможно открыть файл", "Ошибка", JOptionPane.ERROR_MESSAGE|JOptionPane.OK_OPTION);
        }
    }

PM MAIL   Вверх
izver84
Дата 14.3.2008, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



knox,  спасибо за пример. А что такое filename и file? И как соглосовать с кнопкой? 
Как я понимаю процедура откравает стандартный диалог открытия файла file->open.  Нахожу необходимый файл, который отображается в JTextArea. Мне же надо,что бы файл автоматически отображался в JTextArea.  Т.е. где то надо прописать путь к файлу.

Это сообщение отредактировал(а) izver84 - 14.3.2008, 10:05


--------------------
Если новая программа с первого раза компилируется без ошибок, значит, она написана принципиально неправильно. 
PM MAIL   Вверх
izver84
Дата 14.3.2008, 11:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Отобразить получилось 
если  добавить в слухатель процедуру

Цитата

  FileReader file_reader = null;
       file_reader = new FileReader("D:\\eclipse3.2.2\\workspace\\sbit\\newfile.txt");
          char buffer[] = new char[4096];
          int len;
                  while ((len = file_reader.read(buffer)) != -1){
             String s = new String (buffer, 0, len);
              jTextArea.append(s);
           }


полный код для кнопки
Цитата

private JButton getJButton5() {
  if (jButton5 == null) {
    jButton5 = new JButton();
    jButton5.setPreferredSize(new Dimension(40, 40));
    jButton5.setSelected(false);
    jButton5.setMinimumSize(new Dimension(40, 40));
    jButton5.setLocation(new Point(166, 1));
    jButton5.setToolTipText("Выход");
    jButton5.setIcon(new ImageIcon(getClass().getResource("/bmp/exit.gif")));
    jButton5.setMaximumSize(new Dimension(40, 40));
    jButton5.addActionListener(new java.awt.event.ActionListener() {
    public void actionPerformed(java.awt.event.ActionEvent e) {
     try {
       FileReader file_reader = null;
        file_reader = new FileReader("D:\\eclipse3.2.2\\workspace\\sbit\\newfile.txt");
           char buffer[] = new char[4096];
           int len;
                     while ((len = file_reader.read(buffer)) != -1){
              String s = new String (buffer, 0, len);
               jTextArea.append(s);
            }
    
      } catch (IOException e1) {
       // TODO Auto-generated catch block
       e1.printStackTrace();
      }
     
    }
    });
  
  }
  return jButton5;
    }
 

Вопрос: 
Содержание отображается коряво. как этого избежать?
Исходный фал прикреплен.



--------------------
Если новая программа с первого раза компилируется без ошибок, значит, она написана принципиально неправильно. 
PM MAIL   Вверх
izver84
Дата 14.3.2008, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Всё нормально. изменил шрифт в текстареа. 


--------------------
Если новая программа с первого раза компилируется без ошибок, значит, она написана принципиально неправильно. 
PM MAIL   Вверх
izver84
Дата 28.1.2009, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



 я загружаю в jTextArea данные из *.txt

Код

FileReader file_reader = null;
       file_reader = new FileReader("D:\\eclipse3.2.2\\workspace\\sbit\\newfile.txt");
          char buffer[] = new char[4096];
          int len;
                  while ((len = file_reader.read(buffer)) != -1){
             String s = new String (buffer, 0, len);
              jTextArea.append(s);
           }



бегунок прыгает в конец jTextArea. 
Вопрос примитивный. Как сделать так, чтобы после отображения бегунок остался на первом строке?



--------------------
Если новая программа с первого раза компилируется без ошибок, значит, она написана принципиально неправильно. 
PM MAIL   Вверх
izver84
Дата 30.1.2009, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Разобрался. 

Код

 jTextArea.setCaretPosition(1);  




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

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

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


 




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


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

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