Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.03.2012, 15:47   #1
Mcduff
Пользователь
 
Регистрация: 31.10.2011
Сообщений: 27
Печаль с++. текстовой файл - дополнение строк

Срочно нужна помощь.
В с++ необходимо сделать следующее задание:
Дан текстовой файл в котором на каждой строчке написаны либо ники, либо пароли. Ник сотоит из 6-ти символов, причем первые 4 - Большие буквы, а остальные 2 - цыфры. В пароле произвольное кол-во символов, буквы и цыфры идут в перемешку. Необходимо, чтобы программа создавала новый текстовой файл, в котором уже записаны эти ники и пароли, причем на каждой строчке после них самих должно быть написано, пароль это или ник.

Буду Очень признателен, если хоть кто-нибудь хоть как-нибудь поможет.
Mcduff вне форума Ответить с цитированием
Старый 15.03.2012, 16:26   #2
microbit
Форумчанин
 
Аватар для microbit
 
Регистрация: 26.09.2011
Сообщений: 176
По умолчанию

и в чём сложность? открываете файл, читаете построчно, проверяете ник или пароль, записываете в другой файл.
microbit вне форума Ответить с цитированием
Старый 15.03.2012, 17:39   #3
Mcduff
Пользователь
 
Регистрация: 31.10.2011
Сообщений: 27
По умолчанию

нужно, чтобы программа определяла. Тоесть, например, если это логин, что первые 4 - Большие буквы, а остальные 2 - цыфры, и следовательно сама записывала на каждой строчке уже в новом текстовом док-те ПОСЛЕ ЭТИХ "слов", что это логин или же пароль.

С этим у меня проблемма. Прошу помогите.
Mcduff вне форума Ответить с цитированием
Старый 15.03.2012, 20:20   #4
Blondy
Участник клуба
 
Аватар для Blondy
 
Регистрация: 07.07.2009
Сообщений: 1,385
По умолчанию

Есть такая функции - уже встроенные - substring(подстрока), isalpha (отвечает за буквы) и isdigit(отвечает за цифры). Но вот чувствует мое сердце, что если в С++ возможно работать с регулярными выражениями и Вы такое проходили, тут разговор как раз идет о них.

Создается некий шаблон - (посмотрите в справочнике) - например, в Вашем случае "^[A-Z]{4}[0-9]{2}$" и Ваша программа сравнивала бы содержимое строки с таким шаблоном. Как нашла такое, сразу диагностировала бы что это ник.
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Blondy вне форума Ответить с цитированием
Старый 15.03.2012, 21:47   #5
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,365
По умолчанию

Точно не скажу, но в С++ я регулярок не припомню, разве что в библиотеке Boost.
Скорее всего придется ручками проверять каждую букву и цифру в цикле по строке.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Старый 16.03.2012, 18:19   #6
Mcduff
Пользователь
 
Регистрация: 31.10.2011
Сообщений: 27
По умолчанию

Код:
#include <cstdlib>
#include <iostream>
#include "stdio.h"
#include "conio.h"
#include <iostream>
#include <fstream>
#include <string>

using namespace std;
int main(int argc, char *argv[])
{
    FILE *fo;
    int n;
    char s[20];
    cin >> s;
    fo=fopen(s,"wt");
    std::cout << fo; // прописывать так, например, "new.txt", тоесть указываем формат файла (txt).
    getch();

    FILE *pFile;
    pFile = fopen (s,"r+");
     FILE *UGfile;
     UGfile = fopen ("lig.txt","wt");
     char line[15];
      ifstream F("lig.txt");
      F.getline(line,sizeof(line));
  if (pFile!=NULL)
 for (n=0 ; n<15 ; n++)
  {

  }
    return 0;
}
То, чего я сумел достичь (еще сделал, чтобы название файла можно было задать в консоле). По идее, мне надо из исходного файла (тут он lig.txt) сделать массив строк, чтобы потом сравнивать каждую строку с шаблоном "^[A-Z]{4}[0-9]{2}$". (Незнаю теперь что делать)
По идее надо, чтобы выглядело примерно так:

Исходный файл:
gaga55
7uf7e93
kuku00
...
и т.д.

Получившийся файл:
gaga55 ник
7uf7e93 пароль
kuku00 ник
...
и т.д.

Последний раз редактировалось ACE Valery; 16.03.2012 в 19:58. Причина: поправка
Mcduff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Текстовой файл Happiness♥ Паскаль, Turbo Pascal, PascalABC.NET 1 25.06.2011 21:02
Текстовой файл Аселек Паскаль, Turbo Pascal, PascalABC.NET 0 25.04.2011 18:49
текстовой файл Katia123 Паскаль, Turbo Pascal, PascalABC.NET 5 23.06.2010 10:14
текстовой файл Work Group Помощь студентам 0 27.12.2009 19:35
Текстовой файл Stanislav Общие вопросы Delphi 3 26.12.2007 14:31