Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Строки. Текстовые файлы в С++ Builder


Автор: Гость_Ilya 8.12.2005, 13:26
Написать программу, которая считывает английский текст из файла и выводит его на экран, заменив каждую первую букву слов, начинающихся с гласной буквы, на прописную. smile

Автор: sexton 8.12.2005, 13:35
Идем прям по хелпу.

Код


// Это тебе для того чтоб прочитать файл

The following example uses a button, and an Open dialog box on a form. When the button is clicked, the user is prompted for a filename. When the user clicks OK, the specified file is opened, read into a buffer, and closed. 

void __fastcall TForm1::Button1Click(TObject *Sender)

{
  int iFileHandle;
  int iFileLength;
  int iBytesRead;
  char *pszBuffer;
  if (OpenDialog1->Execute())
  {
    try
    {
      iFileHandle = FileOpen(OpenDialog1->FileName, fmOpenRead);
      iFileLength = FileSeek(iFileHandle,0,2);
      FileSeek(iFileHandle,0,0);
      pszBuffer = newchar[iFileLength+1];
      iBytesRead = FileRead(iFileHandle, pszBuffer, iFileLength);
      FileClose(iFileHandle);

// Тут делаем проверку слов
 
      delete [] pszBuffer;
    }
    catch(...)
    {
      Application->MessageBox("Can't perform one of the following file operations: Open, Seek, Read, Close.", "File Error", IDOK);
    }
  }
}


Про выдирание слов http://forum.vingrad.ru/index.php?showtopic=73099&unread=1&st=15&hl=strtok

Автор: Гость_Ilya 8.12.2005, 13:44
А какие кнопочки будут? Ну... Вот это вся моя задачка? Всё решение?

Автор: sexton 8.12.2005, 14:02
Обычные Button и OpenDialog кидаешь на форму. И в обработчике OnClick кидаешь этот код,
потом в месте
Цитата

// Тут делаем проверку слов

Дописываешь код из моего поста "Кусок кода из MSDN" (найдешь по ссылке).
Это тебе для открытия файла и поиска слов. Ну а замену букв можно делать например с использованием для первой буквы слова функции AnsiString UpperCase()...
Давай, не ленись - покрути код, посмотри что откуда выходит и что на выходе дает.

Автор: Гость_Ilya 10.12.2005, 13:51
А ты не можешь мне сделать её? А то мне времени не хватает. Душа студента улетучится, если прога не будет готова, до 16 декабря.
Помоги, плиз, я тебя очень прошу. Хочешь, деньги тебе вышлю?

Автор: sexton 10.12.2005, 15:02
Сейчас попробую...

Автор: sexton 10.12.2005, 15:43
Готово... Говори куда слать, а то мне архивы нельзя класть...
Денег не надо, поставишь плюс, если зарегишься
smile

Учись, студент.

Автор: codelord 10.12.2005, 16:13
Вот накидал может подойдет ..
Плюсов не надо smile
Добавлено @ 16:14
sexton а почему это тебе нельзя класть архивы?

Автор: sexton 10.12.2005, 16:26
codelord а нет, можно - не глянул, что у меня в архив obj попали и tds, вот за размер и вылез
smile
Вобщем вот мой вариант...

codelord твое решение мне в принципе понравилось smile , но имхо мое наглядней для новичка smile.

Автор: MIG 10.12.2005, 16:32
СКАЖИТЕ, КАК ПЛЮСИКИ ПОСТАВИТЬ?

Автор: sexton 10.12.2005, 16:51
Щелкаешь на плюс около репутации smile

Автор: codelord 10.12.2005, 16:58
Цитата(sexton @ 10.12.2005, 12:26)
не глянул, что у меня в архив obj попали и tds, вот за размер и вылез

sexton
ты закинь в общую папку со своими проктами файлик ниже, запускай после компиляций, и не придется беспокоиться, о том что-что не удалено smile
MIG на сколько я понимаю ты не можешь изменить репутацию, до того момента пока не наберешь 100 постов.
Если модератор посчитает нужным изменит сам.. ну а ты пока развивайся smile
Добавлено @ 17:00
Я понял как мы выйдем из этой ситуации smile..

Автор: Гость_Ilya 10.12.2005, 17:21
Прям вам за меня все хотят + поставить!!!
Задача сде smile лана!!! СпасибоОО, Нароод!!!

Автор: qwerty99 28.3.2007, 23:17
Пасиба люди Добрые!! Помогли и мне очень приочень сильно  smile 

Автор: codelord 29.3.2007, 22:19
Цитата(qwerty99 @  28.3.2007,  19:17 Найти цитируемый пост)
Пасиба люди Добрые!! Помогли и мне очень приочень сильно

блин приятно так давно было а людям польза. 


пс. смотрю на код который в моем посте и офигеваю че за логика у меня была  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)