Приложения
Приложение А. Функции, константы и структуры RDS
А.5. Сервисные функции и макросы RDS
А.5.10. Загрузка и сохранение данных блока
А.5.10.11. rdsWriteWordStringText – запись строки в текстовом формате
Функция rdsWriteWordStringText добавляет к данным, сохраняемым блоком в текстовом формате, указанную строку текста, заменяя в ней непечатаемые символы на их обозначения и заключая ее в кавычки. Перед строкой, если необходимо, добавляется ключевое слово.
void RDSCALL rdsWriteWordStringTextA( RDSCSTR Keyword, // Ключевое слово (UTF8) RDSCSTR String // Строка (UTF8) ); void RDSCALL rdsWriteWordStringTextW( RDSWCSTR Keyword, // Ключевое слово (UTF16) RDSWCSTR String // Строка (UTF16) ); // Функция-псевдоним void RDSCALL rdsWriteWordStringText( RDSXCSTR Keyword, // Ключевое слово (кодировка по умолчанию) RDSXCSTR String // Строка (кодировка по умолчанию) );
Тип указателя на эту функцию
RDS_VSS (для UTF8) или RDS_VWsWs (для UTF16)
Параметры
- Keyword (RDSCSTR, RDSWCSTR, RDSXCSTR)
- Указатель на строку (char* или wchar_t*, в зависимости от версии функции) с ключевым словом, или NULL, если ключевое слово добавлять не нужно.
- String (RDSCSTR, RDSWCSTR, RDSXCSTR)
- Указатель на записываемую строку (char*или wchar_t*).
Примечания
Эта функция может вызываться только из функции модели блока в момент реакции на события записи данных блока в текстовом формате RDS_BFM_SAVETXT, во всех остальных случаях вызов игнорируется. Она добавляет преобразованную для записи строку (с ключевым словом или без него) к общему набору текстовых данных блока. После завершения реакции на событие RDS_BFM_SAVETXT этот набор будет записан в файл или буфер обмена (в зависимости от того, для чего сохраняются данные блока). Перед строкой и ключевым словом всегда добавляется пробел.
Преобразование строки, переданной в параметре String, в вид, пригодный для записи в текстовые данные блока, осуществляется точно так же, как и в функции rdsProcessText с параметром RDS_PT_TEXTTOSTRING. При чтении текстовых данных блока функцией rdsGetTextWord строки в кавычках автоматически преобразуются обратно в исходный вид (все обозначения непечатаемых символов заменяются на их коды).
Пример
Вызов функции
rdsWriteWordStringTextW(L"remark",L"Строка1\nСтрока2");
добавит к текстовым данным блока пробел и следующий текст:
remark "Строка1\nСтрока2"
См. также
RDS_BFM_SAVETXT, RDS_BFM_LOADTXT, rdsProcessText, rdsGetTextWord.