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 phương thứ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 enum đại diện cho các loại nút nội dung XML.

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
createCdata(text)CdataTạo một nút CDATASection chưa đính kèm có giá trị đã cho.
createComment(text)CommentTạo một nút Comment chưa đính kèm có giá trị đã cho.
createDocType(elementName)DocTypeTạo một nút DocumentType chưa đính kèm cho nút Element gốc với tên đã cho.
createDocType(elementName, systemId)DocTypeTạo một nút DocumentType chưa đính kèm cho nút Element gốc với 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 chưa đính kèm cho nút Element gốc với 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 đính kèm có 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 đính kèm có tên và không gian tên cục bộ đã cho.
createText(text)TextTạo một nút Text chưa đính kèm có giá trị đã cho.
getCompactFormat()FormatTạo đố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 việc không có không gian tên thực.
getPrettyFormat()FormatTạo đối tượng Format để xuất tài liệu XML mà con người có thể đọc được.
getRawFormat()FormatTạo đối tượng Format để xuất tài liệu XML thô.
getXmlNamespace()NamespaceTạo Namespace có tiền tố xml tiêu chuẩn.
parse(xml)DocumentTạo Document từ XML đã cho mà không xác thực XML.

Tài liệu chi tiết

createCdata(text)

Tạo một nút CDATASection chưa đính kèm có 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 đính kèm có 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 chưa đính kèm cho nút Element gốc với tên đã cho.

Tham số

TênLoạiMô tả
elementNameStringtên của nút Element gốc cần chỉ định trong phần 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 đính kèm cho nút Element gốc với 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 phần 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 chưa đính kèm cho nút Element gốc với 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 phần 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 đính kèm có tên cục bộ đã cho và không có không gian tên.

Tham số

TênLoạiMô tả
nameStringtên cục bộ 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 đính kèm có tên và không gian tên cục bộ đã cho.

Tham số

TênLoạiMô tả
nameStringtên cục bộ 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 đính kèm có 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 đố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 bao gồm 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 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 tạo


getNoNamespace()

Tạo một Namespace đại diện cho việc không có không gian tên thực.

Cầu thủ trả bóng

Namespace – không gian tên mới tạo


getPrettyFormat()

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

// 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 đố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 thụt lề và không ngắt dòng ngoài những dòng được cung cấp trong tài liệu XML, đồng thời bao gồm cả phần khai báo XML và mã hoá của tài liệu đó.

// 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 Namespace có tiền tố xml tiêu chuẩn.

Cầu thủ trả bóng

Namespace – không gian tên mới tạo


parse(xml)

Tạo Document từ XML đã cho mà không xác thực 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