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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 36, средняя оценка - 4.75
Мысщъ
0 / 0 / 0
Регистрация: 25.02.2007
Сообщений: 37
#1

Работа с файлами (консольный текстовый редактор) - C++

08.07.2008, 19:31. Просмотров 4556. Ответов 1
Метки нет (Все метки)

Собственно это будет не вопрос какой-то конкретный, а скорее хочу просто посоветоваться. На данный момент оно умеет только открывать файл (если нету - создает), да дописывать в конец файла дополнения. причем выглядит довольно по-индейски:
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
// trd.cpp : Defines the entry point for the console application.
// открытие файла на дозапись. данные, уже записанные в файл изменять нельзя
// в принципе оно работает
// надо сделать так, что бы уже введенные данные можно было редактировать
 
#include "stdafx.h"
#include <fstream>
#include <iostream>
#include <string>
 
using namespace std;
 
int main()
{
    char ch;
    char file_name[40];
    string content, dummie;
 
    cout << "Input filename\n";
    cin.get(file_name,40); // получаем имя файла
    getline(cin,dummie); //чистим cin, что бы следующий getline нормально работал
 
    ifstream infile(file_name); //создаем файловый объект для вывода данных.
    /*я знаю, что это индуизм! но если вы такие апупеть умные, то скажите, как сбросить
    file.eof() в ноль, а?*/
 
    /*while(!infile.eof())
    {
        infile.get(ch);
        cout << ch;
    }*/
 
    infile >> dummie; //выводим уже записанные данные на экран
    cout << dummie;
 
    getline(cin,content); // ввод новых данных в память
 
    ofstream outfile(file_name); // создаем файловый объект для дозаписи
 
    outfile << dummie << content; // и записываем
 
    return 0;
}
я знаю, что создавать для такой цели два объекта - бред, но иначе для записи нужно, по видимому, сбросить file.eof() в ноль (я сначала вывожу уже записанные данные по циклу while(!file.eof()), а как это сделать я не знаю
и еще тогда - как можно сделать так, что бы можно было редактировать уже записанные в файл данные? cin.putback мне ничем не помог в этом разрезе
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2008, 19:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с файлами (консольный текстовый редактор) (C++):

Работа с файлами: вывод-ввод результатов программы в текстовый файл - C++
#include&lt;iostream&gt; #include&lt;cstdlib&gt; #include&lt;ctime&gt; using namespace std; int main() { setlocale(0, &quot;rus&quot;); cout &lt;&lt;...

Написаить простой консольный редактор текстовых файлов - C++
Нужно написаить простой консольный редактор текстовых файлов. В каую сторону копать? Желательно кросплатформенный. Ну или под Windows.

работа с файлами(как написать программу добавления в текстовый файл после какой-то определённой буквы одного пробела?) - C++
ребят подскажите как написать программу добавления в текстовый файл после какой-то определённой буквы одного пробела????? не получается...

Консольный редактор таблиц - C++
Здравствуйте, необходимо разработать класс, моделирующий таблицу, ячейки которой могут хранить данные разных типов. В консоли мы выбираем...

Текстовый редактор - C++
Пишу текстовый редактор и не знаю как правильно написать вывод строк на экран. хотя может я не правильно сделал определение строк или с...

Текстовый редактор - C++
подскажите, как создать текстовое поле на C++ для текстового редактора среда netbeans у меня есть минимальное приложение...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Vourhey
Почетный модератор
6481 / 2256 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
09.07.2008, 00:49 #2
Ну это круто... чтобы редактировать файл тебе нужно создавать буфер, реализовать управление курсором, реализовать правильную работу клавиш с этим буфером, который ты будешь выводить и т. д..
можно скачать сорцы vim'а и посмотреть, как реализовано там (http://www.vim.org/sources.php). Благо коментов там, как в и должно быть в идеале.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.07.2008, 00:49
Привет! Вот еще темы с ответами:

Простенький текстовый редактор - C++
Уважаемые! Может у кого-нибудь есть простенький текстовый редактор под ДОС? Или может кто-нибудь знает где его скачать можно. ...

Простой текстовый редактор - C++
скажите как сделать кнопку &quot; Open &quot;??? в стандартный примерах Microsoft Visual Studio 2010..она задается так... но надо как то...

Текстовый редактор с шифрованием актуально ли? - C++
Я написал текстовый редактор с шифрованием на с++.Актуальны ли сейчас такие редакторы? вот ссылка можете скачать...

Текстовый редактор. Зашифровать текст. - C++
подскажите пожалуйста не пойму что надо сделать??? &quot;файл должен храниться в зашифрованном виде: над каждым симво-лом файла произвести...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru