FoxPro Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Visual FoxPro Examples

Bounced Mail
Bz2
Character Encoding
CSV
Digital Certificates
Digital Signatures
Email
Email Object
FTP
HTML Conversion
HTTP
IMAP
Encryption
MHT / HTML Email
POP3
RSA
S/MIME
Socket
Spider
SFTP
SMTP
SSH
SSH Key
SSH Tunnel
String
Tar
Upload
XML
XMP
Zip Compression
Self-Extractor

More Examples...
Amazon S3
DKIM / DomainKey
NTLM
RSS
Atom
Byte Array
Service
PPMD
Deflate
DH Key Exchange
DSA
FileAccess
Bzip2
LZW

 

Non-Chilkat Links
Text and String Handling

(Visual FoxPro) XML SearchForTag Method

Demonstrates the SearchForTag and SearchForTag2 methods.

The input XML, available at http://www.chilkatsoft.com/data/fruitSearch.xml, is this:

<root>
    <searchRoot>
        <fruit color="red">apple</fruit>
        <fruit color="green">pear</fruit>
        <veg color="orange">carrot</veg>
        <meat animal="cow">beef</meat>
        <xyz>
            <fruit color="blue">blueberry</fruit>
            <veg color="green">broccoli</veg>
        </xyz>
        <fruit color="purple">grape</fruit>
        <cheese color="yellow">cheddar</cheese>
    </searchRoot>
    <fruit color="red">strawberry</fruit>
    <fruit color="orange">peach</fruit>
    <root></root>
</root>

Download Chilkat XML ActiveX

LOCAL loXml
LOCAL loXSearchRoot
LOCAL loXBeginAfter
LOCAL loXFound
LOCAL lnSuccess
LOCAL loXSearch

loXml = CreateObject('Chilkat.Xml')

*  The sample input XML is available at http://www.chilkatsoft.com/data/fruitSearch.xml
lnSuccess = loXml.LoadXmlFile("fruitSearch.xml")
IF (lnSuccess <> 1) THEN
    ? loXml.LastErrorText
    QUIT
ENDIF

*  Search the sub-tree rooted at "searchRoot"
loXSearchRoot = loXml.FindChild("searchRoot")

*  Search for all nodes having the tag "fruit"
loXBeginAfter = NULL
loXFound = loXSearchRoot.SearchForTag(loXBeginAfter,"fruit")
DO WHILE NOT (loXFound = NULL )

    ? loXFound.Content

    RELEASE loXBeginAfter
    loXBeginAfter = loXFound
    loXFound = loXSearchRoot.SearchForTag(loXBeginAfter,"fruit")
ENDDO

RELEASE loXBeginAfter

? "--------------------------"

*  ---------------------------------------------------------------------------------
*  Now do the same, but instead use SearchForTag2
*  which updates the internal reference of the caller instead
*  of returning the found node.

loXBeginAfter = loXSearchRoot.GetSelf()
loXSearch = loXSearchRoot.GetSelf()

lnSuccess = loXSearch.SearchForTag2(loXBeginAfter,"fruit")
DO WHILE lnSuccess = 1

    ? loXSearch.Content

    *  Copy the internal references so that the next search
    *  begins after the found node.
    loXBeginAfter.CopyRef(loXSearch)
    loXSearch.CopyRef(loXSearchRoot)

    lnSuccess = loXSearch.SearchForTag2(loXBeginAfter,"fruit")
ENDDO

RELEASE loXSearch
RELEASE loXBeginAfter

RELEASE loXSearchRoot


© 2000-2010 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Email Component · ASP Mail Component · XML Parser