Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
650 / 460 / 80
Регистрация: 26.10.2010
Сообщений: 1,263
Записей в блоге: 4
1

Замена произвольной строки в текстовом файле с использованием ifstream\ofstream

22.05.2014, 20:26. Показов 1245. Ответов 4
Метки нет (Все метки)

Здравствуйте. Есть текстовый файл с содержанием слов и цифр:
Код
0
слово 1
слово 2
слово 3
Нужно заменить цифру в первой строке на другую, например 1, чтобы файл стал такого вида

Код
1
слово 1
слово 2
слово 3
Возникает 4 вопроса:
1. Как считать значение этой цифры в первой строке;
2. Как заменить эту цифру на другую не перезаписав\стерев данные других строк;
3. Считать данные после первой строки;
4. Как заменить данные после первой строки?

Использую стандартную библиотеку ifstream\ofstream.
Пробовал манипуляцию с функцией seekp\seekg, но ничего не получилось.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.05.2014, 20:26
Ответы с готовыми решениями:

ifstream / ofstream
Доброго времени суток. И сразу к проблеме. Делаю вывод в файл объектов класса для их последующего...

Ошибка с ofstream и ifstream
Выдаёт ошибки на ofstream F и ifstream G . Много пересмотрел материалов , но ответа на вопрос не...

Задача с потоками ofstream и ifstream
Задача, есть форма с PageControl и три вкладки TabSheet на каждой вкладке находится StringGrid мне...

Поиск, сложение и замена в текстовом файле
подскажите пожалуйста, есть файл .txt, в нем куча строк вида ..... N21G2X362Y25I-5J0.3F30...

4
Модератор
7181 / 4682 / 1973
Регистрация: 21.01.2014
Сообщений: 19,843
Записей в блоге: 3
22.05.2014, 21:14 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void __fastcall TForm4::Button1Click(TObject *Sender)
{
  TStringList *sl = new TStringList;
  TStringList *sl1 = new TStringList;
  sl->LoadFromFile("e:\\1.txt");
  Memo1->Text = sl->Text;
  for(int i = 0; i < sl->Count; i++)
   {
     if(i == 0) sl1->Add("1");
     else sl1->Add(sl->Strings[i]);
   }
  Memo2->Text = sl1->Text;
  sl1->SaveToFile("e:\\2.txt");
  delete sl;
  delete sl1;
}
Мемо использовал единственно для демонстрации...
0
Миниатюры
Замена произвольной строки в текстовом файле с использованием ifstream\ofstream  
650 / 460 / 80
Регистрация: 26.10.2010
Сообщений: 1,263
Записей в блоге: 4
22.05.2014, 21:23  [ТС] 3
D1973, не вижу тут применения fstream
0
Модератор
7181 / 4682 / 1973
Регистрация: 21.01.2014
Сообщений: 19,843
Записей в блоге: 3
22.05.2014, 21:44 4
А оно обязательно? Тагда, значит, не понял вопроса, sorry
0
Эксперт С++
8379 / 6115 / 613
Регистрация: 10.12.2010
Сообщений: 28,550
Записей в блоге: 30
22.05.2014, 22:18 5
Аналогично :
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
#include <string>
#include <iostream>
#include <vector>
#include <fstream>
 
int main()
{
    std::string file("1.txt");
 
    std::ifstream ifs(file.c_str());
 
    std::string line;
    std::vector<std::string> vs;
 
    if(ifs)
        while(getline(ifs,line))
            vs.push_back(line);
 
    ifs.close();
 
    vs.at(0)= "1";
 
    std::ofstream ofs(file.c_str());
 
    for(size_t i=0; i< vs.size(); ++i)
        ofs<<vs[i]<< std::endl;
 
    ofs.close();
 
    getchar();
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.05.2014, 22:18

Замена значений в текстовом файле с использованием fstream
Всем привет! Есть некий .txt файл. Структура его проста Наименование: (число) Наименование2:...

Замена строки в текстовом файле
Здравствуйте. Много лазил по форуму, но так и не нашёл нужного мне способа, поэтому решил создать...

Замена строки в текстовом файле
Помогите пожалуйста Необходимо написать батник. Находит текст в файле 1.txt. Он может меняться,...

Замена части строки в текстовом файле
Добрый вечер. Необходима помощь в написании bat, который бы заменил: &quot;restore_ps&quot;: на...


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

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

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