У всіх що розглядалися дотепер програмах введення даних проводилося тільки з клавіатури, а висновок - тільки на екран. Якщо як пристрої вводу/виводу обмежитися тільки клавіатурою і екраном, то у такому разі буде складно обробити великі об'єми вхідних даних. Вихідні дані, відображені на екрані, після виключення комп'ютера безповоротно втрачаються. Для усунення подібних проблем зручно зберігати дані на запам’ятовуючих носіях, призначених для довготривалого зберігання даних. Дані, що згенерували за допомогою однієї програми, можна зберегти на диску і надалі, при необхідності, витягнути і обробити в іншій програмі.
На дисках дані зберігаються у вигляді структур даних, що обслуговуються операційною системою, - у вигляді файлів. Файл простіше всього представити як лінійну послідовність символів.
Файл - це сукупність даних, які розміщені на зовнішньому носії, зокрема, на жорсткому диску. Дані у файлі називаються елементами. Кількість даних під час опрацювання файлів не зазначають. Файли можуть містити як текстову, так і числову інформацію.
Перед початком вивчення файлових операцій в Си++, згадаємо поняття потоку вводу-виводу. Потік нагадує "канал" або "трубу", через яку дані поступають від передавача до приймача. Виключно важлива особливість потокової обробки даних полягає в тому, що елементи даних можна посилати або прочитувати з потоку тільки поодинці за раз, тобто послідовно.З програми дані можна відправити (записати) в потік виводу, а отримати (прочитати) їх в програмі з потоку введення. Наприклад, відразу після запуску програми, потік стандартного введення "cin" підключається до клавіатури, а потік стандартного висновку "cout" - до екрану.
Існує декілька бібліотечних функцій, які дають змогу зчитати інформацію з файлу або спрямовувати потік виведення у файл. Функції, які розглядатимемо, описані в бібліотеці fstream.h. Тому для роботи з файлами насамперед необхідно підключити саме цю бібліотеку:
#include<fstream.h>
У модулі fstream.h також містяться описи стандартних потоків cout і сіn. Тому, щоб зчитати інформацію з файлу і вивести її на екран монітора, модуль iostream.h підключати не обов'язково.