![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#16
|
|||
|
|||
![]() Держите полный проект (D2007).
|
#17
|
||||
|
||||
![]() И Выдает ошибку(!такую-же но бывет и с другими числами !) !!!! Что-же теперь делать, у меня Delphi 7 !
![]() ![]() ![]() Неужели это конец ?! Последний раз редактировалось Oleg, 03.01.2008 в 17:43. |
#18
|
||||
|
||||
![]() У меня есть RADStudio_2007_Lite(какая-то порезанная версия ???), ~91.9 mb. Может что подскажете, хотелось бы на основе Delphi 7
![]() ![]() |
#19
|
||||
|
||||
![]() И в ошибке он показывает строку
![]() Код:
Nodes := XML.DocumentElement.ChildNodes; |
#20
|
||||
|
||||
![]() Жду ответа и очень надеюсь на рациональное решение
![]() ![]() Если у кого-то есть ссылка на полну Delphi 2007, дайте плизз. Последний раз редактировалось Oleg, 03.01.2008 в 17:56. |
#21
|
|||
|
|||
![]() Цитата:
|
#22
|
||||
|
||||
![]() Вот спасибо вам огромное за помощь !!!
Буду разбираться, хорошо, что есть такие люди, которые всегда помогут! ![]() ![]() ![]() Респект таким людям ! |
#23
|
|||
|
|||
![]() Не за что, мне самому интересно было поразбираться. Я, честно говоря, сегодня впервые работал с XML. Обращайтесь.
|
#24
|
||||
|
||||
![]() Вот я решил организовать работу по выводу всех t id в функции, как мне лучше вернуть результат. Ведь в массиве строк нельзя ? Как лучше(по типу String). Чтобы каждое значение было как бы в одной строке ? Подскажите
![]() Код:
function GetTidForPage(XML:IXMLDocument;page:integer):string; var Nodes : IXMLNodeList; PageNode, ChildNode : IXMLNode; s :String; begin s:=''; if XML = nil then Result:='Error: File Not Found'; try Nodes := XML.DocumentElement.ChildNodes; PageNode := Nodes.FindNode('page'); while (PageNode <> nil) do if (PageNode.NodeName <> 'page') or (PageNode.Attributes['id'] <> page) then PageNode := PageNode.NextSibling else break; if PageNode <> nil then begin Nodes := PageNode.ChildNodes; ChildNode := Nodes.First; while ChildNode <> nil do begin s:=s+ChildNode.Text; ChildNode := ChildNode.NextSibling; end; end; finally XML := nil; Result:=s; end; end; |
#25
|
|||
|
|||
![]() Код:
function GetTidForPage(XML:IXMLDocument;page:integer):TStringList;:string; var Nodes : IXMLNodeList; PageNode, ChildNode : IXMLNode; s :String; SList: TStringList; begin s:='';SList := TStringList.Create; if XML = nil then Result:='Error: File Not Found'; try Nodes := XML.DocumentElement.ChildNodes; PageNode := Nodes.FindNode('page'); while (PageNode <> nil) do if (PageNode.NodeName <> 'page') or (PageNode.Attributes['id'] <> page) then PageNode := PageNode.NextSibling else break; if PageNode <> nil then begin Nodes := PageNode.ChildNodes; ChildNode := Nodes.First; while ChildNode <> nil do begin s:=s+ChildNode.Text; SList.Add(ChildNode.Text); ChildNode := ChildNode.NextSibling; end; end; finally XML := nil; Result:=s;SList; end; end; Код:
var SL: TStringList; begin SL := GetTidForPage(XML, 1); RichEdit1.Lines.Add(SL[0]); ... Код:
SL.Free; |
#26
|
||||
|
||||
![]() Спасибо за пример, учту
![]() |
#27
|
||||
|
||||
![]() Что-то не получается написать функцию, которая будет добавлять на заданный "page" новый "t id"
Что-то типа Код:
function CreateTid(XML:IXMLDocument;page,Tid:integer):boolean; Код:
function CreatePage(XML:IXMLDocument;page:integer):boolean; |
#28
|
||||
|
||||
![]() Всё, помощь не нужна, я написал функцию.
![]() |
#29
|
||||
|
||||
![]() .................
Последний раз редактировалось Oleg, 04.01.2008 в 23:11. |
#30
|
||||
|
||||
![]() Могу ли я вынести свои функции в отдельный Unit.
Я создаю новый Unit, обзываю его например "proc", кладу туда все мои функции, затем этот Unit "proc" кладу в папку с программой, которая вызывает эти функции, предварительно добавив в uses программы proc. Что я делааю не так(и в uses Unit добавлял uses, которые были в программе для этих функций) ? ![]() |