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

Удаление из текстового файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Иероглифы после CharToOemA http://www.cyberforum.ru/cpp-beginners/thread884771.html
Подскажите, почему после казалось бы простейшей операции в "buf" оказываются каракули? setllocale вроде не помагает .... Каракули я вижу в дебагере и если просто выводить в окошко в WinApi приложение. std::string str="ПРЭВЭД МЕДВЕД"; char* buf=new char; strcpy_s(buf,str.size()+1,str.c_str()); CharToOemA(buf,buf);
C++ Решение транспортной задачи с промежуточными перевозками для нахождения оптимальной конфигурации электрической сети Исходные данные для траспортной задачи с промежуточными перевозками Задаются: Конфигурация сети вида: Мощности пунктов: P2=0,6 Ое P3=0,3 Ое P4=1,5 Ое Мощность электростанции(пункт 1)=2,4 Ое и удельные стоимости транспорта энер¬гии вида http://www.cyberforum.ru/cpp-beginners/thread884758.html
C++ Чтение данных из файла
1. Дан файл с именами людей, датами рождения и смерти. Прочитать данные из файла и поместить их в структуру данных, которая будет выглядеть как "Имя человека" tab "дата рождения" tab "дата смерти" . При этом запрещено использовать структуру данных с константным количеством элементов. Вывести на консоль данные всех людей в виде оформленной таблицы
C++ функция с прототипом int (string, string)
В файле USAPresidendid.txt приведены данные о бывших президентах США: имя, время нахождения на посту президента, дата рождения, дата смерти. Даты даны в формате mm/dd/yyyy. Если президент живой, то вместо даты смерти стоит звездочка '*'. Разделителем полей является знак табуляции '\t'. 1. Прочитать данные из файла и поместить их в структуру данных, которая удобна для использования при решении...
C++ Microsoft Visual studio 2012 (как включить подсказки?) http://www.cyberforum.ru/cpp-beginners/thread884727.html
как включить подсказки. Например если я ставлю { чтоби она автоматически закривалась } что бы когда я написал оператор for автоматически визивалься конструктор етого оператора. Так как в X cod. мне етого очень не хватает в Microsoft visual studio 2012
C++ Замена (printf на cout) Как заменить здесь использование printf на cout (программа с битовыми полями) void printbin(int x) { int i = 16; while(i) { printf("%d", (x & 0x8000) >> 15); i--; x <<= 1; подробнее

Показать сообщение отдельно
LookLand
0 / 0 / 0
Регистрация: 06.09.2010
Сообщений: 45
30.05.2013, 11:09     Удаление из текстового файла
Необходимо удалить структуру из текстового файла. Я создал 2 файла. Считываю все с первого , вбиваю во второй. Затем наоборот. Если удалять первую запись , то она бесконечно перезаписывается. Если вторую или третью то она записывает только во второй файл.В общем вот мой код:

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include <iostream>
#include <fstream>
using namespace std;
 
struct workers
{
    unsigned int id;
    char name[256];
    char lastname[256];
    char qualification[256];
};
int main()
{
    unsigned int a;
    cout << "Введите id рабочего для удаления ";
    cin >> a;
    ifstream f("workers.txt");
    ofstream p("workers2.txt");
 
    while(true)
    {
    workers worker;
    f >> worker.id;
    f >> worker.name;
    f >> worker.lastname;
    f >> worker.qualification;
    if(a == worker.id)
    {
    continue;
    }
    p << worker.id << endl;
    p << worker.name << endl;
    p << worker.lastname << endl;
    p << worker.qualification << endl;
    if (f.eof())
      {
    ifstream k("workers2.txt");
    ofstream j("workers.txt");
    while(true)
        {
        workers worker;
        k >> worker.id;
        k >> worker.name;
        k >> worker.lastname;
        k >> worker.qualification;
        j << worker.id << endl;
        j << worker.name << endl;
        j << worker.lastname << endl;
        j << worker.qualification << endl;
            if(k.eof())
            {
                break;
            }
            }
 
     }
}
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 08:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru