Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Qt и кроссплатформенное программирование С/С++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2010, 09:21   #1
FroL25
Пользователь
 
Регистрация: 03.01.2010
Сообщений: 22
По умолчанию Qt и *rtf

Возникла такая проблема - используя Qt надо вставить строку в файл с расширением *rtf. Напрямую через потоковый ввод не получается...Я как понял надо его "распаковать", потом вставлять строку, а потом опять сжимать в *rtf. Помогите оч надо(((

Последний раз редактировалось FroL25; 03.12.2010 в 09:43.
FroL25 вне форума Ответить с цитированием
Старый 03.12.2010, 09:47   #2
xwicked
Участник клуба
 
Аватар для xwicked
 
Регистрация: 21.03.2010
Сообщений: 1,508
Лампочка

Цитата:
Сообщение от FroL25 Посмотреть сообщение
Возникла такая проблема - надо вставить строку в опен офис, а точнее в файл с расширением *rtf. Напрямую через потоковый ввод не получается...Я как понял надо его "распаковать", потом вставлять строку, а потом опять сжимай в *rtf. Помогите оч надо(((
Код HTML:
{\rtf1\ansi\deff0\adeflang1025
{\fonttbl{\f0\froman\fprq2\fcharset0 Nimbus Roman No9 L{\*\falt Times New Roman};}{\f1\froman\fprq2\fcharset0 Nimbus Roman No9 L{\*\falt Times New Roman};}{\f2\fswiss\fprq2\fcharset0 Nimbus Sans L{\*\falt Arial};}{\f3\fnil\fprq2\fcharset0 DejaVu Sans;}}
}
Распаковывать и запаковывать ничего не надо. Вверху теги rtf-текста(файл открыт через блокнот). Придётся писать парсер. Google по твоему запросу сразу выдаёт ответ. Самая первая ссылка
Google - лучший помощник программиста.
---
моя лаборатория | мой FaceBook
xwicked вне форума Ответить с цитированием
Старый 03.12.2010, 09:52   #3
FroL25
Пользователь
 
Регистрация: 03.01.2010
Сообщений: 22
По умолчанию

Цитата:
Сообщение от xwicked Посмотреть сообщение
Код HTML:
{\rtf1\ansi\deff0\adeflang1025
{\fonttbl{\f0\froman\fprq2\fcharset0 Nimbus Roman No9 L{\*\falt Times New Roman};}{\f1\froman\fprq2\fcharset0 Nimbus Roman No9 L{\*\falt Times New Roman};}{\f2\fswiss\fprq2\fcharset0 Nimbus Sans L{\*\falt Arial};}{\f3\fnil\fprq2\fcharset0 DejaVu Sans;}}
}
Придётся писать парсер.
Я понял что надо писать команды такого вида, которые выше, но как их "запустить на выполнение"???Или мне надо написать парсер и через него вставлять эти команды????
FroL25 вне форума Ответить с цитированием
Старый 03.12.2010, 10:09   #4
xwicked
Участник клуба
 
Аватар для xwicked
 
Регистрация: 21.03.2010
Сообщений: 1,508
Лампочка

Цитата:
Сообщение от FroL25 Посмотреть сообщение
Я понял что надо писать команды такого вида, которые выше, но как их "запустить на выполнение"???Или мне надо написать парсер и через него вставлять эти команды????
Парсер: на входе буква "А", на выходе тег"{\fonttbl{\f0\froman\fprq2\fcha rset0 Nimbus Roman No9 L{\*\falt Times New Roman};}" или что-то в этом роде. Дерзайте .
Google - лучший помощник программиста.
---
моя лаборатория | мой FaceBook
xwicked вне форума Ответить с цитированием
Старый 03.12.2010, 10:12   #5
FroL25
Пользователь
 
Регистрация: 03.01.2010
Сообщений: 22
По умолчанию

Цитата:
Сообщение от xwicked Посмотреть сообщение
Парсер: на входе буква "А", на выходе тег"{\fonttbl{\f0\froman\fprq2\fcha rset0 Nimbus Roman No9 L{\*\falt Times New Roman};}" или что-то в этом роде. Дерзайте .
Спасибо.Но объясни глупому человеку - как мне связать тег "{\fonttbl{\f0\froman\fprq2\fcharse t0 Nimbus Roman No9 L{\*\falt Times New Roman};}" и файл *rtf формата???Я же просто не напишу тег и у меня добавиться строка в файл....Мне надо вставить тег в файл или связать тег с файлом...
FroL25 вне форума Ответить с цитированием
Старый 03.12.2010, 10:24   #6
xwicked
Участник клуба
 
Аватар для xwicked
 
Регистрация: 21.03.2010
Сообщений: 1,508
Стрелка

Цитата:
Сообщение от FroL25 Посмотреть сообщение
Спасибо.Но объясни глупому человеку - как мне связать тег "{\fonttbl{\f0\froman\fprq2\fcharse t0 Nimbus Roman No9 L{\*\falt Times New Roman};}" и файл *rtf формата???Я же просто не напишу тег и у меня добавиться строка в файл....Мне надо вставить тег в файл или связать тег с файлом...
Читай про файлы в Qt - это отдельный вопрос .
Google - лучший помощник программиста.
---
моя лаборатория | мой FaceBook
xwicked вне форума Ответить с цитированием
Старый 03.12.2010, 13:05   #7
FroL25
Пользователь
 
Регистрация: 03.01.2010
Сообщений: 22
По умолчанию

У меня получилось вот что:
Код:
ofstream file("C:\\000.rtf", ios::app);
if(!file.is_open()) ShowMessage("Плохо");
String asd = "{\\rtf1\\ansi\\ansicpg1251\\";
file<<asd.c_str()<<endl;
file<<"{\\fonttbl{\\f0\\fswiss\\fcharset204{\\*\\fname Arial;}Arial CYR;}}"<<endl;
file<<"{\\colortbl ;\\red0\\green0\\blue255;}"<<endl;
file<<"\\pard\\cf1\\f0\\fs40 Всем привет!\\par Это документ RTF.\\par}"<<endl;
file.close();
Первый раз, когда файла нет, работает на ура. А вот когда файл уже существует, то уже он не перезаписывается и не добавляется и вообще нельзя его отредактировать. Что не так делаю???
FroL25 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
формат rtf Михаил Юрьевич Общие вопросы Delphi 2 03.10.2010 00:10
открытие rtf Михаил Юрьевич Общие вопросы Delphi 3 06.10.2009 07:37
Отступы в RTF Utkin Общие вопросы Delphi 7 13.03.2009 14:53
RTF Mickle Общие вопросы Delphi 2 03.04.2007 21:34