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

Выбор файла для открытия - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Поток ввода-вывода http://www.cyberforum.ru/cpp-beginners/thread1245624.html
#include <iostream> using namespace std; int main() { int i; while(true) { if(cin>>i)
C++ Что такое "сокет"? Посоветуйте литературу Сокет - название программного интерфейса для обеспечения обмена данными между процессами, что то вроде управления протоколом ? и посоветуйте пожалуйста литературу http://www.cyberforum.ru/cpp-beginners/thread1245619.html
Компилирование данных C++
При написании программы на компилированном языке известно что программа переводится на более низкий уровень в язык Ассемблера, но ведь для каждой архитектуры имеется свой список команд и т. д тогда как компилятор определяет этот список объясните пожалуйста
C++ MSDN где можно скачать новую библиотеку?
Вопрос по MSDN библиотеке. Я смог скачать только для VS 2008. А где можно скачать новую библиотеку???
C++ Функция, проверяющая сходимость метода Зейделя http://www.cyberforum.ru/cpp-beginners/thread1245580.html
Напишите пожалуйста функцию, проверяющую сходимость метода Зейделя. Последний кусок программы, не знаю как написать. Добавлено через 15 часов 17 минут Помогите кто-то
C++ В чём смысл return в main()? Есть ли смысл возвращать значение переменной в main()? Если да - зачем? #include<iostream> using namespace std; int main() { int a; cin >> a; подробнее

Показать сообщение отдельно
gru74ik
Модератор
 Аватар для gru74ik
2999 / 1312 / 164
Регистрация: 20.02.2013
Сообщений: 3,742
Записей в блоге: 15
22.08.2014, 11:02     Выбор файла для открытия
Цитата Сообщение от Glebordan Посмотреть сообщение
надо создать переменную типа ifstream
Объект типа ifstream. Для чтения информации из файла. Вы же пользуетесь библиотечным объектом cin для чтения из потока? А тут у вас будет свой объект (назовите его как хотите, я назвал fin), только читает он не из потока, а из файла.

А вот для записи в файл, надо будет создавать уже объект типа ofstream. Он строится по аналогии с cout. То есть, если cout выводит информацию в поток, то Ваш собственный объект (скажем, fout) выводит информацию в файл.

Там только надо в учебниках инфу пошукать, как сделать правильно, потому что, если мне не изменяет память, при открытии файла он (файл) сбрасывается в ноль (затирается).

Цитата Сообщение от Glebordan Посмотреть сообщение
Я правильно вас понял?
Наверное, как-то так:
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
#include <iostream>     // для ввода-вывода
#include <windows.h>    // для отображения русского языка
#include <string>       // для строк класса string
#include <fstream>      // для чтения из файла
 
int main()
{
    using namespase std::string;
    using namespase std::cout;
    using namespase std::cin;
    
    SetConsoleCP(1251);       // для отображения в консоли русского языка
    SetConsoleOutputCP(1251); // для отображения в консоли русского языка
    
    string file_name_to_open;
    cout << "Введите имя редактируемого файла: "
    getline(cin, file_name_to_open);  
      
    //======================= Чтение данных из файла =======================
 
    ifstream fin;             // создание объекта fin типа ifstream    
    fin.open(file_name_to_open);    // ассоциирование создание объекта fin с файлом
                                    
    fin >> какой-то объект (читать из файла строку, например)
    //======================================================================
    return 0;
}
Добавлено через 3 минуты
upd. Я прогнал. Вы были правы насчёт строки в стиле С. Она всё-таки нужна:

Цитата Сообщение от Стивен Прата
Прата С. - Язык программирования С++. Лекции и упражнения (2013, 6-е издание):

Обратите внимание, что метод open() требует в качестве аргумента строки в
стиле С. Это может быть строковый литерал или строка, сохраненная в символьном
массиве.
 
Текущее время: 03:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru