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

прочитать текстовой файл без заморочек - C++

Восстановить пароль Регистрация
 
soican
49 / 23 / 1
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
26.08.2013, 16:07     прочитать текстовой файл без заморочек #1
Люди!!
в билдере для чтения текстового файла делал так
C++
1
2
TStringList *List = new TStringList;
List->LoadFromFile(File_name);
потом к List обращался по строкам List[i]
есть ли для обычного с++ что-то подобное, чтоб можно было делать также и не заморачиваться
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
26.08.2013, 16:18     прочитать текстовой файл без заморочек #2
C++
1
2
while (std::getline(file, string))
   List.push_back(string);
soican
49 / 23 / 1
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
26.08.2013, 16:42  [ТС]     прочитать текстовой файл без заморочек #3
спасиб)ну вот я пишу
C++
1
2
3
4
5
6
7
8
9
10
#include "reading_from_file.h"
#include <iostream>
//---------------------------------------------------------------
using namespace std;
long double **reading_from_file ( string File_name )
{
string s;
list<string> List;
while (getline(File_name, s))
   List.push_back(string);
мне ошибку лупит
no matching function for call to 'getline(std::string&, std::string&)
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
26.08.2013, 16:47     прочитать текстовой файл без заморочек #4
soican, этот getline в string.h а не в istream

Добавлено через 3 минуты
Вот в чем проблема у тебя: туда не имя файла, а istream подавать.
soican
49 / 23 / 1
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
26.08.2013, 16:50  [ТС]     прочитать текстовой файл без заморочек #5
понятно, но все равно ошибка, объясни вот в документации написано 1ый аргемент getline -istream& , ты писал мне
C++
1
2
while (std::getline(file, string))
   List.push_back(string);
что ты имел ввиду под file, я понял как название файла
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
26.08.2013, 16:51     прочитать текстовой файл без заморочек #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <fstream>
#include <list>
#include <string>
 
using namespace std;
 
int main()
{
    ifstream file("input_file.txt");
    list<string> list;
    string temp;
    while (getline(file, temp))
        list.push_back(temp);
 
    for (auto& it : list)
        cout << it << endl;
    return 0;
}
Добавлено через 39 секунд
soican, file - это файл, filename - это уж имя файла. Смотри код выше.
soican
49 / 23 / 1
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
26.08.2013, 17:09  [ТС]     прочитать текстовой файл без заморочек #7
а... ты написал уже

Добавлено через 17 минут
а у этого List операторы [] не перегружены что ли ?
C++
1
2
3
string S1,S2;
for (auto j: List)
 {  S2 = List[j];
//ошибка[/CPP]
т.е. не присваивает!
хотя объявлял List как vector<string> - всё равно не присваивает!
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
26.08.2013, 17:27     прочитать текстовой файл без заморочек #8
soican, Воу, воу палехче.
List - список, реализована структура данных, которая позволяет получить доступ: от текущего элемента - к следующему, от текущего - к предыдущему.
Vector - это динамический массив. Вот он позволяет делать то, что ты хочешь.

C++
1
2
3
string S1,S2;
for (auto j: List)
 {  S2 = List[j];
В j уже будет храниться List[j], т.к. это проход по всему листу последовательно. Если нужен индекс элемента в веткоре - for (int j = 0; j<myVector.size(); ++j)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.08.2013, 17:45     прочитать текстовой файл без заморочек
Еще ссылки по теме:

C++ Из текстового файла прочитать четные числа и записать их в другой файл без использования массива (код С++)
Открыть файл, прочитать. Все, что находится после двоеточия перенести в другой файл C++
C++ Запись в текстовой файл

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

Или воспользуйтесь поиском по форуму:
gray_fox
26.08.2013, 17:45     прочитать текстовой файл без заморочек
  #9

Не по теме:

Цитата Сообщение от soican Посмотреть сообщение
List->LoadFromFile
LoadXMLFromTCPInputStream бы ещё

Yandex
Объявления
26.08.2013, 17:45     прочитать текстовой файл без заморочек
Ответ Создать тему
Опции темы

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