Форум программистов, компьютерный форум CyberForum.ru

Обработка текстовых файлов - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
unior_C++
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 5
27.10.2011, 00:09     Обработка текстовых файлов #1
Помогите написать программу для заданного файла удалить все строки, яки
начинаются с "*". Результат сохранить в том же файли.

незнаю как удалить строку из файла
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2011, 00:09     Обработка текстовых файлов
Посмотрите здесь:

Ужатие текстовых файлов C++
C++ Конкатенация текстовых файлов
Обработка текстовых файлов C++
Соединение 2 текстовых файлов C++
C++ Обработка текстовых данных
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
27.10.2011, 00:50     Обработка текстовых файлов #2
1) Создаешь новый файл.
2) Копируешь в него все строки, кроме тех, что начинаются символом "*".
3) Удаляешь старый файл(функция remove).
4) Называешь новый файл именем старого(функция rename).
unior_C++
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 5
27.10.2011, 01:33  [ТС]     Обработка текстовых файлов #3
а можете написать код??

вот что я пробовал писать, и незнаю как тут можно удалить строку????

C++
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
#include <iostream.h>
#include <fstream.h>
#include <string.h>
#include <conio.h>
 
 
void main() {
 
   ifstream F1("text.txt");
   string st,st2;
   char ch;
 
   while (!F1.eof()) {
 
   getline (F1,st);
   cout << st << endl;
 
    if (st[0]=='*')
    st.clear();
 
 
 
 
 
 
   }
   F1.close();
   getch();
   }
компилируется но ничего не меняется ...(((
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
27.10.2011, 01:59     Обработка текстовых файлов #4
Вам же написали алгоритм. Делайте по алгоритму.
xAtom
 Аватар для xAtom
910 / 735 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
27.10.2011, 09:11     Обработка текстовых файлов #5
Цитата Сообщение от unior_C++ Посмотреть сообщение
а можете написать код??
unior_C++, вот держи.
C++
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
#include <fstream>
#include <string>
#include <sstream>
using namespace std;
 
int main(void) {
  char* fname = "text.txt";
  fstream fp(fname, fstream::in);
  if(! fp.is_open()) 
       return 1;
  stringstream lines;
  string line;
 
  while(! fp.eof()) {
        getline(fp, line, '\n');
        if(line[0] != '*') 
            lines << line << endl;
   }
   fp.clear();
   fp.close();
   fp.open(fname, fstream::out | fstream::trunc);
   fp.write(lines.str().c_str(), lines.str().length());
   fp.flush();
   fp.close();
   lines.clear();
   return 0;
}
unior_C++
0 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 5
27.10.2011, 17:52  [ТС]     Обработка текстовых файлов #6
xAtom
Спасибо
Yandex
Объявления
27.10.2011, 17:52     Обработка текстовых файлов
Ответ Создать тему
Опции темы

Текущее время: 20:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru