|  | 
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  Node.js  Objective-C  PHP Extension  Perl  PowerBuilder  PowerShell  PureBasic  Ruby  SQL Server  Swift  Tcl  Unicode C  Unicode C++  VB.NET  VBScript  Visual Basic 6.0  Visual FoxPro  Xojo Plugin
| (Delphi DLL) XML Sort Records by ContentDemonstrates the SortRecordsByContent method. The input XML, available at http://www.chilkatsoft.com/data/fruitRecordsSort.xml, is this: 
<root>
    <fruits>
        <fruit>
            <name>apple</name>
            <color>red</color>
        </fruit>
        <fruit>
            <name>banana</name>
            <color>yellow</color>
        </fruit>
        <fruit>
            <name>blackberry</name>
            <color>purple</color>
        </fruit>
        <fruit>
            <name>blueberry</name>
            <color>blue</color>
        </fruit>
        <fruit>
            <name>orange</name>
            <color>orange</color>
        </fruit>
        <fruit>
            <name>pear</name>
            <color>green</color>
        </fruit>
    </fruits>
</root>
 uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Xml; ... procedure TForm1.Button1Click(Sender: TObject); var xml: HCkXml; xSortRoot: HCkXml; success: Boolean; bAscending: Boolean; begin xml := CkXml_Create(); // The sample input XML is available at http://www.chilkatsoft.com/data/fruitRecordsSort.xml success := CkXml_LoadXmlFile(xml,'fruitRecordsSort.xml'); if (success <> True) then begin Memo1.Lines.Add(CkXml__lastErrorText(xml)); Exit; end; // The "fruit" records are direct children of the "fruits" node. // Therefore, to sort the fruit records, the SortRecordsByContent // method must be called from the "fruits" node. xSortRoot := CkXml_FindChild(xml,'fruits'); // Sort by the "name" field in ascending order. bAscending := True; CkXml_SortRecordsByContent(xSortRoot,'name',bAscending); // Show the result: Memo1.Lines.Add(CkXml__getXml(xml)); // <root> // <fruits> // <fruit> // <name>apple</name> // <color>red</color> // </fruit> // <fruit> // <name>banana</name> // <color>yellow</color> // </fruit> // <fruit> // <name>blackberry</name> // <color>purple</color> // </fruit> // <fruit> // <name>blueberry</name> // <color>blue</color> // </fruit> // <fruit> // <name>orange</name> // <color>orange</color> // </fruit> // <fruit> // <name>pear</name> // <color>green</color> // </fruit> // </fruits> // </root> CkXml_Dispose(xSortRoot); CkXml_Dispose(xml); end; | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.