Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 09.04.2020
Сообщений: 43

C++ итераторы ввода вывода

11.05.2020, 23:36. Показов 2757. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Прошу помощи с реализацией функции WriteData ,суть программы считать файл в контейнер,затем оттуда переписать в другой файл с помощью итераторов ввода вывода







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
#include <fstream>  //Для файловых потоков
#include <iostream> 
#include <string>   //Для контейнера string
#include <vector>  //Для контейнера vector
#include <iterator> //Для вывода элементов вектора  на экран с помощью алгоритма copy
 
void ReadData(const char* file_name, std::vector < std::string >& data)//std::vector < std::string >& data
{
    int ch = 0;  
    std::string s;  
    const char* FName = file_name;   
    std::ifstream in(FName);    
    while ((ch = in.get()) != EOF)
    {
        if (char(ch) != '\n')
            s = s + char(ch);  
        else
        {
            data.push_back(s); 
            s.clear();
        }
    }
    data.push_back(s); 
    in.close(); 
    copy(data.begin(), data.end(), std::ostream_iterator<std::string>(std::cout, "\n\n"));  //Вывожу вектор на экран
};
void WriteData(const char* file_name,  std::vector < std::string >& data)
{
    int ch = 0;
    std::string s;
    const char* FName = file_name;
    std::ofstream in(FName);
    in.close();
    copy(std::istream_iterator<std::string>(std::cin), std::istream_iterator<std::string>(), back_inserter(data));
};
int main() 
{
    std::vector < std::string > f;
    ReadData("Source.txt", f);
    WriteData("Out.txt",f);
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.05.2020, 23:36
Ответы с готовыми решениями:

Итераторы потокового ввода/вывода stl
Возник такой вопрос при изучении stl. Берем файл, из которого нужно считать данные, через copy записываем в вектор, но может мне кто-нибудь...

Итераторы: зачем используется оператор инкремента для потоков вывода?
Хотел уточнить зачем используется оператор инкремента для потоков вывода: void main(void) { std::ostream_iterator&lt;int&gt;...

C++: итераторы по умолчанию, пустые итераторы, end()
Всем добра! Вопрос на тему итераторов в плюсах: 1. какие значения имеют итераторы без инициализации например,...

1
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
12.05.2020, 10:42
Цитата Сообщение от ALLAh_2 Посмотреть сообщение
Прошу помощи с реализацией функции WriteData ,суть программы считать файл в контейнер,затем оттуда переписать в другой файл с помощью итераторов ввода вывода
Цитата Сообщение от ALLAh_2 Посмотреть сообщение
std::ofstream in(FName);
    in.close();
    copy(std::istream_iterator<std::string>( std::cin), std::istream_iterator<std::string>(), back_inserter(data));
C++
1
2
3
4
5
void WriteData(const char* file_name, std::vector<std::string> &data)
{
    std::ofstream out(file_name);
    std::copy(data.begin(), data.end(), std::ostream_iterator<std::string>(out, ", "));
};
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.05.2020, 10:42
Помогаю со студенческими работами здесь

Итераторы и обратные итераторы
У вектора есть два типа итераторов, обычные и обратные итераторы произвольного доступа... Обычные реализовал, осталось обратные. Решил...

Итераторы Ввода
Здравствуйте! Может кто знает - как можно заполнить контейнер STL из текстового файла, используя итераторы ввода? Если несложно, то с...

Ошибка ввода\вывода 104, файле не открыт для ввода (строка 0)
Всё работает, но пишет: &quot;ошибка ввода\вывода 104, файле не открыт для ввода (строка 0). Program pyat; uses crt; var...

Ошибка ввода/вывода 104 - файл не открыт для ввода
var a:array of integer; n,j,i,k: integer; f:text; begin assign(f,'C:\Users\Алла\Desktop\Универ\матрица.txt'); reset(f); ...

Потоки ввода-вывода
1) Типы данных, для которых перегружены операторы форматного ввода-вывода.


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru