Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Содержимое консоли на печать и в файл, хм.. 
:(
    Опции темы
Solomon
Дата 29.5.2006, 08:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



У меня такая проблемка... Моя программа рашает ... нууу... неважно что она решает... короче решение выводится на экран и мне надо это же решение сохранить в файл и вывести на печать...
Можно ли сохранять в файл не по строчке, а после вывода на экран просто сохранить содержимое консоли... и еще как это содержимое консоли вывести на принтер??? 


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
Romikgy
Дата 29.5.2006, 09:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 8
Всего: 146



если просто то так
tvoya_proga.exe > file.txt
и теперь этот текстовый мож печатать или еще чего smile
если сложнее из проги то
GetConsoleScreenBufferInfo
ReadConsoleOutputCharacter
вроде эти 2 функции подойдут 


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Solomon
Дата 29.5.2006, 09:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



Из проги нужно...
Будь добр, опиши функции  GetConsoleScreenBufferInfo и ReadConsoleOutputCharacter немного поподробнее.   smile  


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
Solomon
Дата 29.5.2006, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



Я нашол описание этих функций, но обсолютно ничего не понял  smile 

 smile  smile  smile  smile  


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
Romikgy
Дата 29.5.2006, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 8
Всего: 146



Что то типа такого, только еще размеры консоли что само брало надо сделать
Код

#include <cstdlib>
#include <iostream>
#include <windows.h>

using namespace std;

int main(int argc, char *argv[])
{
    FILE * fout;
    char buf[80*25];
    DWORD rd;
    COORD crd;
    crd.X=0;
    crd.Y=0;
    cout<<"Privet\nChuvak\n\n\n\n\n\nGuGu\n";
    ReadConsoleOutputCharacter(GetStdHandle(STD_OUTPUT_HANDLE),buf,80*25,crd,&rd);
    fout=fopen("d:\\out.out","wb");
    fwrite(buf,80,25,fout);
    fclose(fout);
    system("PAUSE");
    return EXIT_SUCCESS;
}

 


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Solomon
Дата 29.5.2006, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



Romikgy, Работает, но блина вопервых нераспознает русский шрифт, а во вторых нераспознает знаки табуляции и новой строки... получается сплошной текст... Впринципе... впринципе я смогу сделать построчный вывод в файл с помощью потоков, правда гемороя много smile. Ладно, будем счтитать вопрос с файлом закрытым...
А как насчет вывода на печать... вот то с чем я вообще не работал.  smile  


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
Romikgy
Дата 29.5.2006, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 8
Всего: 146



Цитата(Solomon @  29.5.2006,  12:19 Найти цитируемый пост)
А как насчет вывода на печать... вот то с чем я вообще не работал. 

И я не работал , поиском попробуй воспользоватся
Цитата(Solomon @  29.5.2006,  12:19 Найти цитируемый пост)
нераспознает русский шрифт

Видать с кодировками чет
Цитата(Solomon @  29.5.2006,  12:19 Найти цитируемый пост)
нераспознает знаки табуляции и новой строки... получается сплошной текст..

Тыже попросил читать из консоли , а консоль это и есть массив символов,
не понятно что ты хошь сделать , может можно будет перенаправить консоль 


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Solomon
Дата 29.5.2006, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



Цитата(Romikgy @  29.5.2006,  14:27 Найти цитируемый пост)
 поиском попробуй воспользоватся


Да искал... вообще ничего дельного не нашол smile
 


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
B3cK
Дата 29.5.2006, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 29.5.2005
Где: Минск

Репутация: 1
Всего: 1



Все, что направляешь в поток cout дублируй и направляй в файловый поток txt файла.
У тебя в txt файле получится полная с таким же форматом копия консоли. 
Думается мне, что другим образом сохранить форматирование не получится... 
PM MAIL ICQ   Вверх
bsa
Дата 29.5.2006, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Я так понял, ОС у тебя - Windows?
Ты хочешь печатать из консольной программы (глупость какая, имхо). Есть несколько вариантов:
1. Вывод на принтер, через стандартное устройство (prn или lpt, не помню). Но будут проблемы с русскими буквами.
2. Использовать Win32 API ( http://www.msdn.com/ ). 
PM   Вверх
Solomon
Дата 29.5.2006, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



bsa, что совсем нельзя распечатать содежимое консоли???  smile 
А что если сделать так. Пользователь вводит имя файла *.txt в котором я  зарание сохраняю решенииеи распечатывается уже этот файл... Можно ли реализовать это программно??  

Это сообщение отредактировал(а) Solomon - 29.5.2006, 17:33


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
bsa
Дата 29.5.2006, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Все можно. Другой вопрос, а нужно? Ты сам то уверен, что тебе именно это необходимо?
Под Windows есть свой API. Его надо юзать. Там есть стандартные диалоги настройки печати и т.д. Как ты с ними из консоли собрался работать, я не понимаю. Там работа строится путем "рисования на холсте" (по крайней мере, я так этот процесс понял).
И вообще, зачем тебе под Windows нужна консольная программа, которая и на экран выводит, и в файл, и на печать? Обычно, в консоли работают всякие утилиты, которые можно вызывать из bat файлов, для организации более сложных действий. 
PM   Вверх
bel_nikita
Дата 29.5.2006, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2304
Регистрация: 12.10.2003
Где: Поезд №21/22 ( ст . Прага )

Репутация: 21
Всего: 47



MSDN
не забудь про UNICODE. Что касается сплошного текста, так размер консоли вширину фиксирован, вот и руби этот массив на 25 или 50 символов в зависимости от ширины консоли. 


--------------------
user posted image — регистрация доменов от 150 руб.
PM MAIL WWW ICQ   Вверх
Solomon
Дата 30.5.2006, 00:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



Цитата(bsa @  29.5.2006,  20:08 Найти цитируемый пост)
Все можно. Другой вопрос, а нужно?
 нужно... Как можно реализовать на MFC ввод матрици произвольной размерности...??? я неочень с MFC дружу... Да и сама прога уже готова у меня... осталось сделать вывод на принтер... надеюсь получится... не найдется решения значить что же не судьба... Мне это сильно надо, но не жизненно важный вопрос  smile

Добавлено @ 00:17 
Вообще мне надо хорошую программу для решения симплекс метода(Линейное программирование)... вот и мучаюсь... Полгода пары гулял, а теперь, что бы оценку хорошую поставили требуют прогу хорошую, что бы могли они похвастаться перед другими учебными заведениями... Вот и мучаюсь... незнаю что получится, но что то получится smile 


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
Rockie
Дата 30.5.2006, 01:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 23.4.2006

Репутация: 8
Всего: 31



Цитата(Romikgy @  29.5.2006,  09:23 Найти цитируемый пост)
если просто то так
tvoya_proga.exe > file.txt

Romikgy, что это за чудо? это для какого-то определенного компилятора? или системы? =) пачиму у миня не работает? =(   http://forum.vingrad.ru/html/emoticons/smile.gif 


--------------------
Чтобы иметь большой гардероб - надо иметь большой гардероб.
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1183 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.