Dart
Dart
Demonstrate the XML FindNextRecord Method
See more XML Examples
Imagine we have an XML file as follows:
<CompleteMultipartUpload>
<Part>
<PartNumber>1</PartNumber>
<ETag>abc</ETag>
</Part>
<Part>
<PartNumber>2</PartNumber>
<ETag>def</ETag>
</Part>
<Part>
<PartNumber>3</PartNumber>
<ETag>ghi</ETag>
</Part>
</CompleteMultipartUpload>
We want to find the record where PartNumber = 2. To do so, we simply position ourselves at the first "Part" tag, and then call FindNextRecord. (See below..)
Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
final xml = CkXml();
xml.loadXmlFile('qa_data/xml/multipartUpload.xml');
// Position ourselves at the 1st record.
xml.getChild2(0);
var foundRec = xml.findNextRecord('PartNumber', '2');
if (xml.lastMethodSuccess) {
print('Found the record where PartNumber = 2.');
print(foundRec.getXml());
// Let's examine the ETag for this record...
print('ETag for PartNumber 2 = ${foundRec.getChildContent('ETag')}');
} else {
print('No record exists where PartNumber = 2.');
}
// What if we want to find the record where ETag = "abc"?
try {
foundRec = xml.findNextRecord('ETag', 'abc');
print('Found the record where ETag = abc');
print(foundRec.getXml());
// Let's examine the PartNumber for this record...
print('Part number for Etag(abc) = ${foundRec.getChildContent('PartNumber')}');
} on ChilkatException {
print('No record exists where ETag = abc.');
}
// Go back to the XML root..
xml.getRoot2();
}