這項服務可讓指令碼剖析、瀏覽,並透過程式輔助方式建立 XML 文件。
// Log the title and labels for the first page of blog posts on the // Google Workspace Developer blog. function parseXml() { var url = 'https://gsuite-developers.googleblog.com/atom.xml'; var xml = UrlFetchApp.fetch(url).getContentText(); var document = XmlService.parse(xml); var root = document.getRootElement(); var atom = XmlService.getNamespace('http://www.w3.org/2005/Atom'); var entries = root.getChildren('entry', atom); for (var i = 0; i < entries.length; i++) { var title = entries[i].getChild('title', atom).getText(); var categoryElements = entries[i].getChildren('category', atom); var labels = []; for (var 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() { var root = XmlService.createElement('threads'); var threads = GmailApp.getInboxThreads(); for (var i = 0; i < threads.length; i++) { var child = XmlService.createElement('thread') .setAttribute('messageCount', threads[i].getMessageCount()) .setAttribute('isUnread', threads[i].isUnread()) .setText(threads[i].getFirstMessageSubject()); root.addContent(child); } var document = XmlService.createDocument(root); var xml = XmlService.getPrettyFormat().format(document); Logger.log(xml); }
屬性
屬性 | 類型 | 說明 |
---|---|---|
ContentTypes | ContentType | 列舉代表 XML 內容節點的類型。 |
方法
內容詳盡的說明文件
createCdata(text)
createDocType(elementName)
針對具有指定名稱的根 Element
節點建立未連接的 DocumentType
節點。
參數
名稱 | 類型 | 說明 |
---|---|---|
elementName | String | 要在 DocType 宣告中指定的根 Element 節點名稱 |
回攻員
DocType
:新建立的 DocumentType
節點
createDocType(elementName, systemId)
以指定名稱為根 Element
節點建立未連接的 DocumentType
節點,以及為外部子集資料指定系統 ID。
參數
名稱 | 類型 | 說明 |
---|---|---|
elementName | String | 要在 DocType 宣告中指定的根 Element 節點名稱 |
systemId | String | 要設定的外部資料子集系統 ID |
回攻員
DocType
:新建立的 DocumentType
節點
createDocType(elementName, publicId, systemId)
為具有指定名稱的根 Element
節點建立未連接的 DocumentType
節點,以及為外部子集資料指定的公開 ID 和系統 ID。
參數
名稱 | 類型 | 說明 |
---|---|---|
elementName | String | 要在 DocType 宣告中指定的根 Element 節點名稱 |
publicId | String | 要設定的外部資料公開 ID |
systemId | String | 要設定的外部資料子集系統 ID |
回攻員
DocType
:新建立的 DocumentType
節點
createDocument()
createDocument(rootElement)
createElement(name)
createElement(name, namespace)
getCompactFormat()
建立 Format
物件,用於輸出精簡的 XML 文件。格式設定工具預設為 UTF-8
編碼 (沒有縮排),且沒有額外的換行符號,但包含 XML 宣告及其編碼。
// Log an XML document in compact form. var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; var document = XmlService.parse(xml); var output = XmlService.getCompactFormat() .format(document); Logger.log(output);
回攻員
Format
:新建的格式設定工具
getNamespace(prefix, uri)
getPrettyFormat()
建立 Format
物件,以輸出使用者可理解的 XML 文件。格式設定工具會預設為 UTF-8
編碼、每個節點後方的縮排和 \r\n
行分隔符,並包含 XML 宣告及其編碼。
// Log an XML document in human-readable form. var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; var document = XmlService.parse(xml); var output = XmlService.getPrettyFormat() .format(document); Logger.log(output);
回攻員
Format
:新建的格式設定工具
getRawFormat()
建立 Format
物件,用於輸出原始 XML 文件。格式設定工具預設為 UTF-8
編碼,不會縮排,而且除了 XML 文件本身提供的換行符號外,不會有換行符號,且包含 XML 宣告及其編碼。
// Log an XML document in raw form. var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; var document = XmlService.parse(xml); var output = XmlService.getRawFormat() .format(document); Logger.log(output);
回攻員
Format
:新建的格式設定工具