Advertisement
Usow_Maxim

Lab_9.4

May 11th, 2018
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.22 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <windows.h>
  3.  
  4. char* FileRead(int &Size, char fileName[], bool success = true)
  5. {
  6.     char* str = NULL;
  7.     Size = 0;
  8.     FILE* f = fopen(fileName, "r");
  9.     if(f != NULL)
  10.     {
  11.         // определяем размер файла
  12.         fseek(f , 0 , SEEK_END);                          // устанавливаем позицию в конец файла
  13.         int fileSize = ftell(f);                            // получаем размер в байтах
  14.         rewind (f);                                       // устанавливаем указатель в конец файла
  15.  
  16.         str = new char[fileSize + 1];
  17.  
  18.         int result = fread(str, sizeof(char), sizeof(char) * fileSize, f);
  19.         Size = fileSize;
  20.     }
  21.     else
  22.     {
  23.         printf("Ошибка чтения файла!\n");
  24.         success = false;
  25.     }
  26.     fclose(f);
  27.     return str;
  28. }
  29.  
  30. void FileWrite(char* str, char fileName[], int Size)
  31. {
  32.     FILE* f = fopen(fileName, "w");
  33.     for(int i = 0; i < Size; i++)
  34.         fprintf(f, "%s", str[i]);
  35.     fclose(f);
  36. }
  37.  
  38. int main()
  39. {
  40.     SetConsoleCP(1251);
  41.     SetConsoleOutputCP(1251);
  42.  
  43.     int Size = 0;
  44.     char* str = NULL;
  45.  
  46.     char buf[255] = "\0";
  47.     printf("Данная программа удаляет <html> теги\n");
  48.     bool run = true;
  49.     while(run)
  50.     {
  51.         printf("Введите файл который будет использован:\nИмя файла: ");
  52.         scanf("%s", buf);
  53.         bool suc = true;
  54.         str = FileRead(Size, buf, suc);
  55.         if(suc)
  56.         {
  57.             FILE* fout = fopen("out.txt", "w");
  58.             bool del = false;
  59.             for(int i = 0; i < Size; i++)
  60.             {
  61.                 if(str[i] == '<')
  62.                     del = true;
  63.                 if(!del)
  64.                 {
  65.                     fprintf(fout, "%c", str[i]);
  66.                 }
  67.                 if(str[i] == '>')
  68.                     del = false;
  69.             }
  70.             fclose(fout);
  71.             run = false;
  72.         }
  73.     }
  74.  
  75.     printf("В файл out.txt было записано всё, кроме <html> тегов...\n");
  76.  
  77.     //Delete
  78.     delete[] str;
  79.  
  80.     return 0;
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement