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

Ввод-вывод файлов

24.05.2013, 00:56. Показов 1004. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
подскажите код программы, которая считывает числа из файла и выводит эти же числа в другой файл в обратном порядке
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.05.2013, 00:56
Ответы с готовыми решениями:

Ввод/вывод чисел из файлов
1) Дан файл input.in с 2 числами, разделенными пробелом. Какой самый легкий и быстрый способ записать эти числа в переменные a и b соотв. ...

Потоковый ввод / вывод файлов
Помогите пожайлуйста исправить ошибки в коде. В функции OemToChar пишет "char*" не совместим с параметром "LPWSTR" #include...

Ввод/вывод двоичных файлов
Нужно чтоб первый создаваемый файл был двоичным и данные в нем в двоичном режиме Вот мой код #include <iostream> #include...

11
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
24.05.2013, 01:52
Если запись фиксированного размера, достаточно читать файл с конца. В противном случае, придется организовать промежуточное хранение либо в массиве, либо в файле.
0
0 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 8
24.05.2013, 17:18  [ТС]
я создал файл ("1.txt"), в него в столбик ввел числа.
как считать эти числа из файла, я понял, но в новый файл эти числа не выводит (
хотелось бы узнать ,что нужно исправить в этом коде, чтобы выполнялся вывод чисел в новый файл

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int main()
{
    ifstream fin;
    fin.open ("1.txt");
    string s;
    while (getline (fin, s))
        cout << s << '\n';
 
    ofstream fout ("txt.txt");
    fout << s ;
 
    fin.close();
    fout.close();
    getch();
    return 0;
   }
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
24.05.2013, 18:14
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int main(int argc,char** argv)
{              
   ifstream    In;
   ofstream    Out;
 
   In.open("1.txt");
   Out.open("txt.txt");
 
   char  pszStr[MAX_PATH + 1];
 
   while (In.getline(pszStr,MAX_PATH))
   {
      Out << pszStr << '\n';
   }
 
   In.close();
   Out.close();
 
   getch();
 
   return 0;
}
P.S.

Если собираетесь читать файл с конца, то потоковый ввод вам не подойдет.
1
0 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 8
24.05.2013, 20:59  [ТС]
спасибо, код работает)
а что нужно для того, чтобы считать файл с конца? (числа записать в новом файле в обратном порядке)
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
24.05.2013, 21:45
Если записей немного (все могут быть размещены в памяти), то можно просто использовать (динамический) массив. На первом шаге считывать все из файла в массив, на втором - записывать из массива в файл. Если записей много (в памяти не помещаются), то ставим указатель в файле на последнюю запись, считываем, записываем как первую.
Передвигаем указатель на предпоследнюю, считываем, записываем как вторую. И т.д. Если все записи одного фиксированного размера, это так же просто, как с массивом. Если нет - необходимо знать (или вычислять) положение и размер для каждой записи.
1
0 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 8
24.05.2013, 23:20  [ТС]
спасибо за советы, буду пробовать =)
0
0 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 8
26.05.2013, 13:13  [ТС]
попробовал воспользоваться функцией swap для разворота массива...
программа компилируется, но в новый файл ничего не выводит (

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
42
43
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <fstream.h>
#include <cstring.h>
#include <algorithm>
 
 
int main()
{
 
 
   ifstream    fin;
   ofstream    fout;
 
   fin.open("1.txt");
   fout.open("txt.txt");
 
    cout << "Writing to the file 'txt.txt'... " ;
 
   char  s[80];
 
   while (fin.getline(s,80)) 
 
 
        for (int i  = 0; i < 80 / 2; i++)
         std::swap(s[i], s[80 - i - 1]);
 
 
for (int i  = 0; i < 80; i++)
   {
      fout << s << '\n';
   }
 
   fin.close();
   fout.close();
 
    cout << "Press any button" ;
 
   getch();
 
   return 0;
}
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
26.05.2013, 13:55
Зачем еще какие-то функции? Просто считывайте массив в обратном порядке.
1
0 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 8
26.05.2013, 14:13  [ТС]
а как это нужно сделать?
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
26.05.2013, 14:47
Вы серьезно? Вас в детстве обратному счету не учили?

C++
1
2
3
4
for (int ii = (N - 1); ii >= 0; --ii)
{
   // do smth
}
1
0 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 8
26.05.2013, 17:12  [ТС]
учили, но если бы я знал, как применить это в с++ ,не задавал бы столько бесполезных вопросов )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.05.2013, 17:12
Помогаю со студенческими работами здесь

Форматированный ввод/вывод с использованием текстовых файлов
ЗДРАВСТВУЙТЕ. МЕНЯ ЗОВУТ ДАША. У МЕНЯ ПРОБЛЕМА, Я НЕ ЧЕГО НЕ ПОНИМАЮ В С++, А У МЕНЯ ЗАЧЕТ, МОЖЕТ КТО ТО МНЕ СМОЖЕТ СДЕЛАТЬ МОЁ ЗАДАНИЕ: ...

Работа со строками, ввод с файла и вывод в несколько файлов
Здравствуйте, не знаю как решить задачу, прошу помочь:scratch: В общем есть несколько строк, которые мы вводим с текстового файла, в них...

Файловый ввод/вывод. Какие форматы файлов можно читать в файловых потоках?
Заранее простите за тупой вопрос, но какие форматы файлов можно считать с помощью #include &lt;iostream&gt; #include &lt;fstream&gt; ...

Русско-английский словарь. Ввод данных с двух файлов. Вывод результата в файл
Здравствуйте, сама задача: Даны два текстовых файла - в первом расположены русские слова, во втором их англоязычный перевод. Создать...

Заменить в программе, переводящую строку в двоичный код, консольный ввод/вывод на файловый ввод/вывод
Добрый день! Помогите, пожалуйста, с программой. Программа считывает строку с клавиатуры и переводит её в двоичный код. затем наоборот...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru