Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 1
Регистрация: 29.10.2014
Сообщений: 30

Поиск слова в текстовом файле

09.11.2016, 20:31. Показов 2895. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Разработать программу, которая читает текстовый файл и некоторое слово и выводит те строки файла, которые содержат данное слово. Имя читаемого файла запрашивается с клавиатуры.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.11.2016, 20:31
Ответы с готовыми решениями:

Поиск позиции слова в текстовом файле
Первый раз на форуме, не сильный специалист в Java, всю голову сломал. Есть программа, которая делает поиск слова в файле и выдаёт его...

Поиск чисел в текстовом файле
Нужно найти самое большое число в каждой строчке текстового файла и вывести их.

Найти в текстовом файле слова с указанным количеством букв
Мне надо найти в текстовике слова с указанным количеством букв. Вот нарыл про сплин и токенайзер. Scanner sc = new Scanner(System.in); ...

2
 Аватар для RedPatrick
143 / 115 / 61
Регистрация: 13.01.2016
Сообщений: 305
10.11.2016, 09:09
oli, Посмотрите здесь, задача очень похожа на Вашу, разберитесь) Удачи.
0
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
10.11.2016, 09:14
Лучший ответ Сообщение было отмечено oli как решение

Решение

Вот нарыл клевый класс у оракла:
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
public class Grep {
    // Charset and decoder for ISO-8859-15
    private static Charset charset = Charset.forName("ISO-8859-15");
    private static CharsetDecoder decoder = charset.newDecoder();
 
    // Pattern used to parse lines
    private static Pattern linePattern
            = Pattern.compile(".*\r?\n");
 
    // The input pattern that we're looking for
    private static Pattern pattern;
 
    // Compile the pattern from the command line
    //
    private static void compile(String pat) {
        try {
            pattern = Pattern.compile(pat);
        } catch (PatternSyntaxException x) {
            System.err.println(x.getMessage());
            System.exit(1);
        }
    }
 
    // Use the linePattern to break the given CharBuffer into lines, applying
    // the input pattern to each line to see if we have a match
    //
    private static void grep(File f, CharBuffer cb) {
        Matcher lm = linePattern.matcher(cb); // Line matcher
        Matcher pm = null;      // Pattern matcher
        int lines = 0;
        while (lm.find()) {
            lines++;
            CharSequence cs = lm.group();   // The current line
            if (pm == null)
                pm = pattern.matcher(cs);
            else
                pm.reset(cs);
            if (pm.find())
                System.out.print(f + ":" + lines + ":" + cs);
            if (lm.end() == cb.limit())
                break;
        }
    }
 
    // Search for occurrences of the input pattern in the given file
    //
    private static void grep(File f) throws IOException {
 
        // Open the file and then get a channel from the stream
        FileInputStream fis = new FileInputStream(f);
        FileChannel fc = fis.getChannel();
 
        // Get the file's size and then map it into memory
        int sz = (int)fc.size();
        MappedByteBuffer bb = fc.map(FileChannel.MapMode.READ_ONLY, 0, sz);
 
        // Decode the file into a char buffer
        CharBuffer cb = decoder.decode(bb);
 
        // Perform the search
        grep(f, cb);
 
        // Close the channel and the stream
        fc.close();
    }
 
    public static void main(String[] args) {
        if (args.length < 2) {
            System.err.println("Usage: java Grep pattern file...");
            return;
        }
        compile(args[0]);
        for (int i = 1; i < args.length; i++) {
            File f = new File(args[i]);
            try {
                grep(f);
            } catch (IOException x) {
                System.err.println(f + ": " + x);
            }
        }
    }
}
Работает почти как обычный греп (т.е. если подать как в моем кейсе System* .\Grep\src\com\test\grep\Grep.java):
Code
1
2
3
4
5
.\Grep\src\com\test\grep\Grep.java:36:            System.err.println(x.getMessage());
.\Grep\src\com\test\grep\Grep.java:37:            System.exit(1);
.\Grep\src\com\test\grep\Grep.java:56:                System.out.print(f + ":" + lines + ":" + cs);
.\Grep\src\com\test\grep\Grep.java:86:            System.err.println("Usage: java Grep pattern file...");
.\Grep\src\com\test\grep\Grep.java:95:                System.err.println(f + ": " + x);
Добавлено через 27 секунд
Отсюда: https://docs.oracle.com/javase... /Grep.java
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.11.2016, 09:14
Помогаю со студенческими работами здесь

Найти в текстовом файле слова-палиндромы и записать их в новый файл
Добрый день! Очень нужна помощь! Напишите основной код, остальное допишу. Спасибо! Добавлено через 50 секунд Предоставлен файл...

Найти слова в текстовом файле которые составлены ТОЛЬКО из гласных букв
Вроде не сложная задача, но как то вообще не идет.Только начал изучать Java. Нужно найти слова в текстовом файле (в котором может быть куча...

Поиск слова в текстовом файле
Почему программа вылетает ? Когда пробую на линуксе, там вообще дамп памяти. Необходимо найти слово в файле, и вывести их количество,...

Поиск слова в текстовом файле
Нужно создать программу по поиску слова в текстовом файле. Есть вот-такой вот код: #define _CRT_SECURE_NO_WARNINGS #include...

Поиск слова в текстовом файле
Почему программа вылетает ? Когда пробую на линуксе, там вообще дамп памяти. Необходимо найти слово в файле, и вывести их количество,...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
YAFU@home — распределённые вычисления для математики. На CPU
Programma_Boinc 20.01.2026
YAFU@home — распределённые вычисления для математики. На CPU YAFU@home — это BOINC-проект, который занимается факторизацией больших чисел и исследованием aliquot-последовательностей. Звучит. . .
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru