The UNIX and Linux Forums  
Здравствуйте и добро от Соединенных Штатов UNIX и Linux Форумы! Благодарим Вас за посещение и вступления нашей мирового сообщества.

Go Back   В UNIX и Linux Форумы > Топ форумы > Программирования высокого уровня
.
Google unix.com



Программирования высокого уровня Почтовые вопросы о C, C + +, Java, SQL и других языках программирования здесь.

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
каким образом можно искать строки в один текстовый файл и заменить всю строку в другой файл kkraja UNIX для чайников Вопросы И Ответы 6 08-06-2008 08:23 AM
Поиск строки текста и добавьте после строки kesu2k Shell программирование и сценарии 8 07-18-2008 08:35 PM
Строка поиска itik AIX 2 01-28-2008 07:01 PM
Perl: Поиск строки в строку поиска и замены текста Crypto Shell программирование и сценарии 4 01-04-2008 10:24 AM
добавить строку в текстовый файл, основанные на поиске строки malaymaru Shell программирование и сценарии 1 06-09-2006 09:53 AM

Reply
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 04-16-2009
Zykl0n-B Zykl0n-B is offline
Зарегистрированный пользователь
  
 

Регистрация: август 2008
Сообщений: 25
Поиск строки в виде текстового файла в C

Здравствуйте,
Мне нужна помощь с программой я кодирования на C.

Какова моя программа должна делать это строка поиска в виде текстового файла, если он находит совпадение, печатать строку на стандартный вывод.

Этот файл выглядит следующим образом:

000001 Калифорнии
100000 Техас
011110 Огайо
010101 Вашингтон

Таким образом, если программа обнаружит совпадение, выводит "100000 Техас" на стандартный вывод.

Не могли бы вы мне помочь?
Прошу прощения мой бедный английский.
Old 04-16-2009
Джим Макнамара jim mcnamara is offline Forum Staff  
...@...
  
 

Регистрация: Февраль 2004
Местонахождение: Н. М.
Сообщения: 5763
Код:
/* srch.c usage: srch filename "string to find"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

int main(int argc, char **argv)
{
	FILE *fp=fopen(argv[1],"r");
	char tmp[256]={0x0};
	while(fp!=NULL && fget(tmp, sizeof(tmp), fp)!=NULL)
	{
		if (strstr(tmp, argv[2])
			printf("%s", tmp);
	}
	if(fp!=NULL) fclose(fp);
	return 0;
}
Old 04-16-2009
Zykl0n-B Zykl0n-B is offline
Зарегистрированный пользователь
  
 

Регистрация: август 2008
Сообщений: 25
Спасибо!!!, Спасибо человеку, ... Спасибо ...

Я исправить 'fgets' и' если 'функции ...

Код:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int main(int argc, char **argv)
{
        FILE *fp=fopen(argv[1],"r");
        char  tmp[256]={0x0};
        while(fp!=NULL && fgets(tmp, sizeof(tmp),fp)!=NULL)
        {
        if (strstr(tmp, argv[2]))
        printf("%s", tmp);
        }
        if(fp!=NULL) fclose(fp);
        return 0;
}
Old 04-17-2009
Джим Макнамара jim mcnamara is offline Forum Staff  
...@...
  
 

Регистрация: Февраль 2004
Местонахождение: Н. М.
Сообщения: 5763
Я не печатать - в два раза.
Old 04-17-2009
Zykl0n-B Zykl0n-B is offline
Зарегистрированный пользователь
  
 

Регистрация: август 2008
Сообщений: 25
Я знаю
Old 07-02-2009
c0d1f1ed c0d1f1ed is offline
Зарегистрированный пользователь
  
 

Регистрация: Jul 2009
Сообщений: 2
Не это не когда в строку поиска пересекает два 'TMP' блок?
Old 07-02-2009
Джим Макнамара jim mcnamara is offline Forum Staff  
...@...
  
 

Регистрация: Февраль 2004
Местонахождение: Н. М.
Сообщения: 5763
Нет поиска строковый, fgets становится одной строке за раз. TMP [256] можно прочитать в целых 255 символов. Нет строки в примере текста больше, чем 40. Нет вопроса.

По общему решению, использованию TMP [LINE_MAX], где LINE_MAX определяется в limits.h Большинство UNIX средствами ограничить размер строки в любой LINE_MAX для вашей системы.
Reply

Закладки

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 10:45 AM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0