Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
 Аватар для Ded_Vasilij
233 / 215 / 63
Регистрация: 01.09.2012
Сообщений: 2,103

Открытие текстового файла

18.12.2013, 21:36. Показов 2415. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
добрый вечер всем. у меня такая проблема:
мне нужно открыть текстовый файл, и найти в нем определенные слова. С поиском надеюсь справлюсь, а вот с открытием беда - не могу понять что по чем. вот чего я насочинял (с помощью Хорстманна естественно )
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package searchname;
 
 
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
import java.io.*;
 
/**
 *
 * @author Администратор
 */
public class MyFrame extends JFrame{
    public MyFrame(){
        Toolkit kit = Toolkit.getDefaultToolkit();
        Dimension screenSize = kit.getScreenSize();
        int screenHeight = screenSize.height;
        int screenWidth = screenSize.width;    
        setSize(screenWidth/4, screenHeight/3);
        setLocationByPlatform(true);
        setTitle("Search Name");
        setResizable(false);
        MenuBar menuBar = new MenuBar();
        setMenuBar(menuBar);
        Menu menu = new Menu("file");
        menuBar.add(menu);
        MenuItem openItem = new MenuItem("Open");
        menu.add(openItem);
        menu.addActionListener(new FileOpenListener());
        MenuItem exitItem = new MenuItem("Exit");
        menu.add(exitItem);
        exitItem.addActionListener(new ActionListener() {
 
            @Override
            public void actionPerformed(ActionEvent e) {
                System.exit(0);
            }
        });
        label = new JLabel();
        add(label);
        chooser = new JFileChooser();
        FileNameExtensionFilter filter = new FileNameExtensionFilter(".txt", "text");
        chooser.setFileFilter(filter);
        chooser.setAccessory(new ImagePreviewer(chooser));
        chooser.setFileView(new FileIconView(null, null));       
    }
    private class FileOpenListener implements ActionListener{
 
        @Override
        public void actionPerformed(ActionEvent e) {
            chooser.setCurrentDirectory(new File("."));
            int result = chooser.showOpenDialog(label);
            if(result == JFileChooser.APPROVE_OPTION){
                String name = chooser.getSelectedFile().getPath();
                label.setIcon(new ImageIcon(name));
            }
            
        }
        
    }
    private JLabel label;
    private JFileChooser chooser;
}

Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package searchname;
 
import java.awt.Dimension;
import java.awt.Image;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JFileChooser;
import javax.swing.JLabel;
import java.io.*;
 
/**
 *
 * @author Администратор
 */
public class ImagePreviewer extends JLabel{
    public ImagePreviewer(JFileChooser chooser){
        setPreferredSize(new Dimension(100,100));
        setBorder(BorderFactory.createEtchedBorder());
        chooser.addPropertyChangeListener(new PropertyChangeListener(){
            @Override
            public void propertyChange(PropertyChangeEvent evt){
                if(evt.getPropertyName() == null ? JFileChooser.SELECTED_FILE_CHANGED_PROPERTY == null :
                        evt.getPropertyName().equals(JFileChooser.SELECTED_FILE_CHANGED_PROPERTY)){
                    File f = (File) evt.getNewValue();
                    if(f == null){
                        setIcon(null);
                        return;
                    }
                    ImageIcon icon = new ImageIcon(f.getPath());
                    if(icon.getIconWidth() > getWidth()){
                        icon = new ImageIcon(icon.getImage().getScaledInstance(getWidth(), -1, Image.SCALE_DEFAULT));
                        setIcon(icon);
                    }
                    
                }
                
            }
        });
    }       
}

Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package searchname;
 
import java.io.FileFilter;
import javax.swing.filechooser.FileView;
import javax.swing.*;
import java.io.*;
 
/**
 *
 * @author Администратор
 */
class FileIconView extends FileView{
    public FileIconView(FileFilter aFilter, Icon anIcon){
        filter = aFilter;
        icon = anIcon;
    }
    
    @Override
    public Icon getIcon(File f){
        if(!f.isDirectory() && filter.accept(f)){
            return icon;
        }else  return null;
    }
    private FileFilter filter;
    private Icon icon;
}

Кликните здесь для просмотра всего текста

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package searchname;
 
/**
 *
 * @author Администратор
 */
import java.awt.*;
import javax.swing.*;
public class SearchName {
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        EventQueue.invokeLater(new Runnable() {
            @Override
            public void run() {
                MyFrame  frame = new MyFrame();
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.setVisible(true);
            }
        });
    }
}

а проблема в том, что не могу понять чего мне делать дальше и как я пойму открыл я файл или нет, была мысля использовать ReadFile - но опять непонятно чего делать - с джавой недавно работаю, опыта совсем мало, выручайте товарищи. Не надо делать за меня, просто подскажите где я дурак.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.12.2013, 21:36
Ответы с готовыми решениями:

Открытие текстового файла сервлетом
Привет всем! Помогите с проблемой: есть текстовый файл по адресу http://www.myhost.org/myfiles/mytext.txt Как мне открыть его сервлетом...

Открытие текстового файла по перетаскиванию файла на ярлык программы.
С обрабатываю текстовые файлы консольным приложением. Есть рисовальщик -графико построитесь. Но он требует специальный формат. Я пишу...

Как может корректно выполняющийся оператор >> (чтение из текстового файла) негативно влиять на открытие другого файла?
Друзья! Создадим два текстовых файла, f_0.txt и f_1.txt и что-нибудь в них запизаем, например в первый запихаем 1234 а во второй 5678 и...

2
 Аватар для Buckstabue
179 / 127 / 25
Регистрация: 12.01.2012
Сообщений: 623
19.12.2013, 00:55
Используйте класс FileReader или лучше Scanner. Методы next() и hasNext() вам в помощь(там же можно настроить разделители слов useDelimiter() а также локаль и прочее). При ошибке открытия файла вылетает эксепшн
http://docs.oracle.com/javase/... anner.html
1
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
20.12.2013, 11:57
Цитата Сообщение от Buckstabue Посмотреть сообщение
Используйте класс FileReader
FileReader использовать не надо. Вообще. Он способен вызвать проблемы с кодировками. Вместо него надо использоват конструкцию с явным указанием кодировки - new InputStreamReader(new FileInputStream(...), "<encoding>")
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.12.2013, 11:57
Помогаю со студенческими работами здесь

Открытие текстового файла
День добрый. Я в ассемблере разбираюсь очень плохо, но нужна программа, которая выводит ФИО, а затем открывает файл на компьютере, читает...

Открытие текстового файла
Подскажите пожалуста в чем причина? Есть в меня Edit с OpenDialog в него заносится полное имя текстового файла и паралельно открывается...

VB 6.0 открытие текстового файла?
Подскажите пожалуйста в VB 6.0, после нажатия кнопки, хочу открыть текстовый файл *.txt в виде блокнота, как пишется? Заранее спасибо!

Открытие текстового файла
вроде бы все пишу правильно, но текст с файла не отображает. Если писать через ofstream весь текст в файле удаляет, но в консоле все равно...

Открытие текстового файла
Доброго времени суток. Как открыть текстовый файл через dosbox? (в моем случае txt-файл)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru