Sample code for 30+ languages & platforms
Zig

Demonstrate the XML UpdateAt Method

See more XML Examples

Demonstrates the XML UpdateAt method.

Note: This example requires Chilkat v9.5.0.64 or later.

Chilkat Zig Downloads

Zig
const std = @import("std");
const chilkat = @import("chilkat");

pub fn main(init: std.process.Init) !void {
    const alloc = init.arena.allocator();

    // Note: This example requires Chilkat v9.5.0.64 or later.
    const xml = try chilkat.Xml.init();
    defer xml.deinit();

    xml.setTag("animals");

    const auto_create = true;
    // When the autoCreate argument equals true, the UpdateAt
    // method auto-creates the children as needed:
    xml.updateAt("penguin", auto_create, "flightless bird") catch {};
    xml.updateAt("mammal|rodent|squirrel", auto_create, "bushy tail") catch {};
    xml.updateAt("mammal|rodent|rat", auto_create, "long hairless tail") catch {};

    // Show the XML
    std.debug.print("{s}\n", .{try xml.getXml(alloc)});

    //     <?xml version="1.0" encoding="utf-8" ?>
    //     <animals>
    //         <penguin>flightless bird</penguin>
    //         <mammal>
    //             <rodent>
    //                 <squirrel>bushy tail</squirrel>
    //                 <rat>long hairless tail</rat>
    //             </rodent>
    //         </mammal>
    //     </animals>

    // Now update each node's content..
    xml.updateAt("penguin", auto_create, "black and white") catch {};
    xml.updateAt("mammal|rodent|squirrel", auto_create, "grey, red, or black") catch {};
    xml.updateAt("mammal|rodent|rat", auto_create, "brown, grey, white, or black") catch {};

    std.debug.print("{s}\n", .{try xml.getXml(alloc)});

    //     <?xml version="1.0" encoding="utf-8" ?>
    //     <animals>
    //         <penguin>black and white</penguin>
    //         <mammal>
    //             <rodent>
    //                 <squirrel>grey, red, or black</squirrel>
    //                 <rat>brown, grey, white, or black</rat>
    //             </rodent>
    //         </mammal>
    //     </animals>
    //
}