Class XmlService

XmlService

Dịch vụ này cho phép các tập lệnh phân tích cú pháp, điều hướng và tạo tài liệu XML theo cách có lập trình.

// Log the title and labels for the first page of blog posts on the
// Google Workspace Developer blog.
function parseXml() {
  const url = 'https://gsuite-developers.googleblog.com/atom.xml';
  const xml = UrlFetchApp.fetch(url).getContentText();
  const document = XmlService.parse(xml);
  const root = document.getRootElement();
  const atom = XmlService.getNamespace('http://www.w3.org/2005/Atom');

  const entries = root.getChildren('entry', atom);
  for (let i = 0; i < entries.length; i++) {
    const title = entries[i].getChild('title', atom).getText();
    const categoryElements = entries[i].getChildren('category', atom);
    const labels = [];
    for (let j = 0; j < categoryElements.length; j++) {
      labels.push(categoryElements[j].getAttribute('term').getValue());
    }
    Logger.log('%s (%s)', title, labels.join(', '));
  }
}

// Create and log an XML representation of the threads in your Gmail inbox.
function createXml() {
  const root = XmlService.createElement('threads');
  const threads = GmailApp.getInboxThreads();
  for (let i = 0; i < threads.length; i++) {
    const child =
        XmlService.createElement('thread')
            .setAttribute('messageCount', threads[i].getMessageCount())
            .setAttribute('isUnread', threads[i].isUnread())
            .setText(threads[i].getFirstMessageSubject());
    root.addContent(child);
  }
  const document = XmlService.createDocument(root);
  const xml = XmlService.getPrettyFormat().format(document);
  Logger.log(xml);
}

Thuộc tính

Thuộc tínhLoạiMô tả
ContentTypesContentTypeMột kiểu liệt kê biểu thị các loại nút nội dung XML.

Phương thức

Phương thứcKiểu dữ liệu trả vềMô tả ngắn
createCdata(text)CdataTạo một nút CDATASection chưa được đính kèm với giá trị đã cho.
createComment(text)CommentTạo một nút Comment chưa được đính kèm với giá trị đã cho.
createDocType(elementName)DocTypeTạo một nút DocumentType không được đính kèm cho nút Element gốc bằng tên đã cho.
createDocType(elementName, systemId)DocTypeTạo một nút DocumentType chưa được đính kèm cho nút Element gốc bằng tên đã cho và mã nhận dạng hệ thống đã cho cho dữ liệu tập hợp con bên ngoài.
createDocType(elementName, publicId, systemId)DocTypeTạo một nút DocumentType không được đính kèm cho nút Element gốc có tên đã cho, mã nhận dạng công khai và mã nhận dạng hệ thống đã cho cho dữ liệu tập hợp con bên ngoài.
createDocument()DocumentTạo một tài liệu XML trống.
createDocument(rootElement)DocumentTạo một tài liệu XML có nút gốc Element đã cho.
createElement(name)ElementTạo một nút Element chưa được đính kèm với tên cục bộ đã cho và không có không gian tên.
createElement(name, namespace)ElementTạo một nút Element chưa được đính kèm bằng tên và không gian tên cục bộ đã cho.
createText(text)TextTạo một nút Text chưa được đính kèm với giá trị đã cho.
getCompactFormat()FormatTạo một đối tượng Format để xuất một tài liệu XML nhỏ gọn.
getNamespace(uri)NamespaceTạo một Namespace bằng URI đã cho.
getNamespace(prefix, uri)NamespaceTạo một Namespace có tiền tố và URI đã cho.
getNoNamespace()NamespaceTạo một Namespace đại diện cho sự vắng mặt của một không gian tên thực.
getPrettyFormat()FormatTạo một đối tượng Format để xuất tài liệu XML mà người dùng có thể đọc được.
getRawFormat()FormatTạo một đối tượng Format để xuất tài liệu XML thô.
getXmlNamespace()NamespaceTạo một Namespace có tiền tố xml tiêu chuẩn.
parse(xml)DocumentTạo một Document từ tệp XML đã cho mà không xác thực tệp XML đó.

Tài liệu chi tiết

createCdata(text)

Tạo một nút CDATASection chưa được đính kèm với giá trị đã cho.

Tham số

TênLoạiMô tả
textStringGiá trị cần đặt.

Cầu thủ trả bóng

Cdata – Nút CDATASection mới tạo.


createComment(text)

Tạo một nút Comment chưa được đính kèm với giá trị đã cho.

Tham số

TênLoạiMô tả
textStringGiá trị cần đặt.

Cầu thủ trả bóng

Comment – Nút Comment mới tạo.


createDocType(elementName)

Tạo một nút DocumentType không được đính kèm cho nút Element gốc bằng tên đã cho.

Tham số

TênLoạiMô tả
elementNameStringTên của nút Element gốc cần chỉ định trong khai báo DocType.

Cầu thủ trả bóng

DocType – Nút DocumentType mới tạo.


createDocType(elementName, systemId)

Tạo một nút DocumentType chưa được đính kèm cho nút Element gốc bằng tên đã cho và mã nhận dạng hệ thống đã cho cho dữ liệu tập hợp con bên ngoài.

Tham số

TênLoạiMô tả
elementNameStringTên của nút Element gốc cần chỉ định trong khai báo DocType.
systemIdStringMã nhận dạng hệ thống của dữ liệu tập hợp con bên ngoài cần đặt.

Cầu thủ trả bóng

DocType – Nút DocumentType mới tạo.


createDocType(elementName, publicId, systemId)

Tạo một nút DocumentType không được đính kèm cho nút Element gốc có tên đã cho, mã nhận dạng công khai và mã nhận dạng hệ thống đã cho cho dữ liệu tập hợp con bên ngoài.

Tham số

TênLoạiMô tả
elementNameStringTên của nút Element gốc cần chỉ định trong khai báo DocType.
publicIdStringMã nhận dạng công khai của dữ liệu tập hợp con bên ngoài cần đặt.
systemIdStringMã nhận dạng hệ thống của dữ liệu tập hợp con bên ngoài cần đặt.

Cầu thủ trả bóng

DocType – Nút DocumentType mới tạo.


createDocument()

Tạo một tài liệu XML trống.

Cầu thủ trả bóng

Document – Tài liệu mới tạo.


createDocument(rootElement)

Tạo một tài liệu XML có nút gốc Element đã cho.

Tham số

TênLoạiMô tả
rootElementElementNút Element gốc cần đặt.

Cầu thủ trả bóng

Document – Tài liệu mới tạo.


createElement(name)

Tạo một nút Element chưa được đính kèm với tên cục bộ đã cho và không có không gian tên.

Tham số

TênLoạiMô tả
nameStringTên địa phương cần đặt.

Cầu thủ trả bóng

Element – Nút Element mới tạo.


createElement(name, namespace)

Tạo một nút Element chưa được đính kèm bằng tên và không gian tên cục bộ đã cho.

Tham số

TênLoạiMô tả
nameStringTên địa phương cần đặt.
namespaceNamespaceKhông gian tên cần đặt.

Cầu thủ trả bóng

Element – Nút Element mới tạo.


createText(text)

Tạo một nút Text chưa được đính kèm với giá trị đã cho.

Tham số

TênLoạiMô tả
textStringGiá trị cần đặt.

Cầu thủ trả bóng

Text – Nút Text mới tạo.


getCompactFormat()

Tạo một đối tượng Format để xuất một tài liệu XML nhỏ gọn. Trình định dạng mặc định là mã hoá UTF-8, không có thụt lề và không có dấu ngắt dòng bổ sung, nhưng có phần khai báo XML và mã hoá của phần khai báo đó.

// Log an XML document in compact form.
const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const document = XmlService.parse(xml);
const output = XmlService.getCompactFormat().format(document);
Logger.log(output);

Cầu thủ trả bóng

Format – Trình định dạng mới tạo.


getNamespace(uri)

Tạo một Namespace bằng URI đã cho.

Tham số

TênLoạiMô tả
uriStringURI cho không gian tên.

Cầu thủ trả bóng

Namespace – Không gian tên mới được tạo.


getNamespace(prefix, uri)

Tạo một Namespace có tiền tố và URI đã cho.

Tham số

TênLoạiMô tả
prefixStringTiền tố cho không gian tên.
uriStringURI cho không gian tên.

Cầu thủ trả bóng

Namespace – Không gian tên mới được tạo.


getNoNamespace()

Tạo một Namespace đại diện cho sự vắng mặt của một không gian tên thực.

Cầu thủ trả bóng

Namespace – Không gian tên mới được tạo.


getPrettyFormat()

Tạo một đối tượng Format để xuất tài liệu XML mà người dùng có thể đọc được. Trình định dạng mặc định là mã hoá UTF-8, thụt lề hai khoảng trắng, dấu phân cách dòng \r\n sau mỗi nút và bao gồm cả khai báo XML cũng như mã hoá của khai báo đó.

// Log an XML document in human-readable form.
const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const document = XmlService.parse(xml);
const output = XmlService.getPrettyFormat().format(document);
Logger.log(output);

Cầu thủ trả bóng

Format – Trình định dạng mới tạo.


getRawFormat()

Tạo một đối tượng Format để xuất tài liệu XML thô. Trình định dạng mặc định là mã hoá UTF-8, không có thụt lề và không có dấu ngắt dòng nào khác ngoài những dấu ngắt dòng được cung cấp trong chính tài liệu XML, đồng thời bao gồm cả khai báo XML và mã hoá của khai báo đó.

// Log an XML document in raw form.
const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const document = XmlService.parse(xml);
const output = XmlService.getRawFormat().format(document);
Logger.log(output);

Cầu thủ trả bóng

Format – Trình định dạng mới tạo.


getXmlNamespace()

Tạo một Namespace có tiền tố xml tiêu chuẩn.

Cầu thủ trả bóng

Namespace – Không gian tên mới được tạo.


parse(xml)

Tạo một Document từ tệp XML đã cho mà không xác thực tệp XML đó.

const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const doc = XmlService.parse(xml);

Tham số

TênLoạiMô tả
xmlStringTệp XML cần phân tích cú pháp.

Cầu thủ trả bóng

Document – Tài liệu mới tạo.