Навигация:
<< >> Оглавление Указатель

Приложения

Приложение А. Функции, константы и структуры RDS

А.5. Сервисные функции и макросы RDS

А.5.32. Вспомогательный объект для работы с форматом CSV

А.5.32.9. Команда RDS_CSV_LINE – одна строка текста

Команда RDS_CSV_LINE устанавливает или возвращает строку текста с указанным номером в указанном объекте (в этой строке содержатся элементы текста, разделенные запятыми).

Вызов команды для установки

  int iStrNum= …       // Номер строки
   sStrText= …  // Текст строки (UTF8)
  (Csv,RDS_CSV_LINE,iStrNum,sStrText);

или

  int iStrNum= …       // Номер строки
   sStrText= … // Текст строки (UTF16)
  (Csv,RDS_CSV_LINE,iStrNum,sStrText);

или (через функцию-псевдоним)

  int iStrNum= …       // Номер строки
   sStrText= … // Текст строки (кодировка по умолчанию)
  (Csv,RDS_CSV_LINE,iStrNum,sStrText);

Вызов команды для чтения

  int iStrNum= …    // Номер строки
   sStrText=(Csv,RDS_CSV_LINE,iStrNum); // UTF8

или

  int iStrNum= …    // Номер строки
   sStrText=(Csv,RDS_CSV_LINE,iStrNum); // UTF16

или (через )

  int iStrNum= …    // Номер строки
   sStrText=(Csv,RDS_CSV_LINE,iStrNum); // Кодировка по умолчанию

Параметры и результат

Csv (RDS_HOBJECT)
Идентификатор вспомогательного объекта для работы с CSV, ранее созданного функцией rdsCSVCreate.
iStrNum (int)
Номер строки текста, которую нужно установить или получить. Строки нумеруются начиная с нуля.
sStrText (RDSCSTR, RDSWCSTR, RDSXCSTR)
Указатель на текст строки (набор элементов, разделенных запятыми). При получении текста строки вызовом rdsGetObjectStr этот текст формируется динамически, поэтому после использования он обязательно должен быть освобожден вызовом rdsFree. Если в строке не содержится ни одного элемента, функция вернет NULL.

Примечания

Эта команда позволяет работать с текстом в формате CSV построчно, не разбивая каждую строку на отдельные элементы.

Пример

Следует помнить, что, поскольку объект хранит текст уже разобранным, для того, чтобы вернуть строку с заданным номером, ему приходится заново собирать ее из отдельных значений. По этой причине при выполнении команды RDS_CSV_LINE для получения строки объект формирует ее в динамической памяти, и обязанность освобождения этой памяти вызовом rdsFree лежит на вызвавшей программе.

См. также

rdsCSVCreate, rdsSetObjectStr, rdsGetObjectStr, rdsFree, RDS_CSV_TEXT.


<< >> Оглавление Указатель