Android™
Android™
Insert XML into existing XML by calling InsertChildTreeAfter
See more XML Examples
Demonstrates how to insert an XML tree or subtree into another XML document using the InsertChildTreeAfter method.Chilkat Android™ Downloads
// Important: Don't forget to include the call to System.loadLibrary
// as shown at the bottom of this code sample.
package com.test;
import android.app.Activity;
import com.chilkatsoft.*;
import android.widget.TextView;
import android.os.Bundle;
public class SimpleActivity extends Activity {
private static final String TAG = "Chilkat";
// Called when the activity is first created.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Build the 1st XML document:
// <x1>
// <a1>1</a1>
// <a2>2</a2>
// <a3>3</a3>
// </x1>
CkXml xml = new CkXml();
xml.put_Tag("x1");
xml.UpdateChildContent("a1","1");
xml.UpdateChildContent("a2","2");
xml.UpdateChildContent("a3","3");
// Build a 2nd XML document:
// <x2>
// <b1>11</b1>
// <b2>22</b2>
// <b3>33</b3>
// </x2>
CkXml xml2 = new CkXml();
xml2.put_Tag("x2");
xml2.UpdateChildContent("b1","11");
xml2.UpdateChildContent("b2","22");
xml2.UpdateChildContent("b3","33");
// We want to insert xml2 into xml to get this:
// <x1>
// <a1>1</a1>
// <x2>
// <b1>11</b1>
// <b2>22</b2>
// <b3>33</b3>
// </x2>
// <a2>2</a2>
// <a3>3</a3>
// </x1>
// Insert xml2 after "a1"
int index = xml.TagIndex("a1");
if (index < 0) {
Log.i(TAG, "a1 not found.");
return;
}
xml.InsertChildTreeAfter(index,xml2);
Log.i(TAG, xml.getXml());
// The result is:
// <x1>
// <a1>1</a1>
// <x2>
// <b1>11</b1>
// <b2>22</b2>
// <b3>33</b3>
// </x2>
// <a2>2</a2>
// <a3>3</a3>
// </x1>
// Note: xml2 now points to the subtree within xml.
// For example, update "b3" and then see how it's updated within the merged document:
xml2.UpdateChildContent("b3","33333333");
Log.i(TAG, xml.getXml());
// The result:
// <x1>
// <a1>1</a1>
// <x2>
// <b1>11</b1>
// <b2>22</b2>
// <b3>33333333</b3>
// </x2>
// <a2>2</a2>
// <a3>3</a3>
// </x1>
}
static {
System.loadLibrary("chilkat");
// Note: If the incorrect library name is passed to System.loadLibrary,
// then you will see the following error message at application startup:
//"The application <your-application-name> has stopped unexpectedly. Please try again."
}
}