AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.08.2007, 20:14   #2  
alizee is offline
alizee
Участник
 
2 / 10 (1) +
Регистрация: 19.10.2007
Могу предложить одно из решений, которое, возможно, не является оптимальным: удалять двоеточия. Это можно сделать, создав временный файл, в который записывать OutStream уже без двоеточий, а потом из этого же времменого файла читать InStream и импортировать уже его. Приведу пример, как это может выглядеть:

inportFile.OPEN(bla-bla-bla);
inportFile.CREATEINSTREAM(incomeStream);

tmpfile.CREATETEMPFILE;
tmpfile.CREATEOUTSTREAM(outcomeStream);

{Логика может быть любой. Я читала InStream по одному символу, и записывала в OutStream все данные, кроме двоеточий. Для моего файла такой вариант хорошо подошел. Можно удалять двоеточия непосредственно в теге, чтобы не портить другое данные. Идея понятна.}

WHILE NOT (incomeStream.EOS()) DO
BEGIN
incomeStream.READTEXT(str, 1);
IF (str = ':') THEN
incomeStream.READTEXT(str, 1);

outcomeStream.WRITETEXT(str);
END;

tmpfile.CREATEINSTREAM(correctStream);

xmlvalue.SETSOURCE(correctStream);
xmlvalue.IMPORT;

tmpfile.CLOSE;
inportFile.CLOSE;
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:37.