Class Format
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Formato
Um formatador para gerar um documento XML com três formatos predefinidos que podem ser
personalizados.
// Log an XML document with specified formatting options.
const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const document = XmlService.parse(xml);
const output = XmlService.getCompactFormat()
.setLineSeparator('\n')
.setEncoding('UTF-8')
.setIndent(' ')
.format(document);
Logger.log(output);
Documentação detalhada
setEncoding(encoding)
Define a codificação de caracteres que o formatador deve usar. O argumento encoding
precisa
ser uma codificação XML aceita, como ISO-8859-1
, US-ASCII
, UTF-8
ou UTF-16
.
// Log an XML document with encoding that does not support certain special
// characters.
const xml = '<root><a><b>ಠ‿ಠ</b><b>ಠ‿ಠ</b></a></root>';
const document = XmlService.parse(xml);
const output =
XmlService.getRawFormat().setEncoding('ISO-8859-1').format(document);
Logger.log(output);
Parâmetros
Nome | Tipo | Descrição |
encoding | String | a codificação a ser usada |
Retornar
Format
: o formatador para encadeamento
setIndent(indent)
Define a string usada para recuar os nós filhos em relação aos pais. Definir um recuo diferente
de null
fará com que o formatador insira um retorno de carro após cada nó.
// Log an XML document with each child node indented four spaces.
const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const document = XmlService.parse(xml);
const output = XmlService.getCompactFormat().setIndent(' ').format(document);
Logger.log(output);
Parâmetros
Nome | Tipo | Descrição |
indent | String | a indentação a ser usada |
Retornar
Format
: o formatador para encadeamento
setLineSeparator(separator)
Define a string a ser inserida sempre que o formatador normalmente insere uma quebra de linha. Os três
formatadores predefinidos têm condições diferentes para inserir um retorno de linha. O
separador de linha padrão é \r\n
.
// Log an XML document with several spaces and a pipe character in place of line
// breaks.
const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const document = XmlService.parse(xml);
const output =
XmlService.getRawFormat().setLineSeparator(' | ').format(document);
Logger.log(output);
Parâmetros
Nome | Tipo | Descrição |
separator | String | o separador a ser usado |
Retornar
Format
: o formatador para encadeamento
setOmitDeclaration(omitDeclaration)
Define se o formatador precisa omitir a declaração XML, como <?xml version="1.0"
encoding="UTF-8"?>
.
Parâmetros
Nome | Tipo | Descrição |
omitDeclaration | Boolean | true para omitir a declaração XML; false para incluí-la |
Retornar
Format
: o formatador para encadeamento
setOmitEncoding(omitEncoding)
Define se o formatador precisa omitir a codificação na declaração XML, como o
campo de codificação em <?xml version="1.0" encoding="UTF-8"?>
.
Parâmetros
Nome | Tipo | Descrição |
omitEncoding | Boolean | true para omitir a codificação na declaração XML e false para
incluí-la. |
Retornar
Format
: o formatador para encadeamento
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-07-26 UTC.
[null,null,["Última atualização 2025-07-26 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eXmlService\u003c/code\u003e provides a formatter to output XML documents with customizable formatting options like encoding, indentation, and line separators.\u003c/p\u003e\n"],["\u003cp\u003eThree predefined formats are available and can be accessed using \u003ccode\u003eXmlService.getPrettyFormat()\u003c/code\u003e, \u003ccode\u003eXmlService.getCompactFormat()\u003c/code\u003e, and \u003ccode\u003eXmlService.getRawFormat()\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eformat()\u003c/code\u003e method outputs either a given \u003ccode\u003eDocument\u003c/code\u003e or \u003ccode\u003eElement\u003c/code\u003e node as a formatted string based on the set formatting options.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can customize the output by setting the encoding, indent, line separator, and whether to omit the XML declaration or encoding using the respective methods on the \u003ccode\u003eFormat\u003c/code\u003e object.\u003c/p\u003e\n"],["\u003cp\u003eThe formatter allows for chaining methods to easily configure multiple formatting options in a single line of code.\u003c/p\u003e\n"]]],[],null,["# Class Format\n\nFormat\n\nA formatter for outputting an XML document, with three pre-defined formats that can be further\ncustomized.\n\n```javascript\n// Log an XML document with specified formatting options.\nconst xml = '\u003croot\u003e\u003ca\u003e\u003cb\u003eText!\u003c/b\u003e\u003cb\u003eMore text!\u003c/b\u003e\u003c/a\u003e\u003c/root\u003e';\nconst document = XmlService.parse(xml);\nconst output = XmlService.getCompactFormat()\n .setLineSeparator('\\n')\n .setEncoding('UTF-8')\n .setIndent(' ')\n .format(document);\nLogger.log(output);\n``` \n\n### Methods\n\n| Method | Return type | Brief description |\n|---------------------------------------------------------------------|-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------|\n| [format(document)](#format(Document)) | `String` | Outputs the given [Document](/apps-script/reference/xml-service/document) as a formatted string. |\n| [format(element)](#format(Element)) | `String` | Outputs the given [Element](/apps-script/reference/xml-service/element) node as a formatted string. |\n| [setEncoding(encoding)](#setEncoding(String)) | [Format](#) | Sets the character encoding that the formatter should use. |\n| [setIndent(indent)](#setIndent(String)) | [Format](#) | Sets the string used to indent child nodes relative to their parents. |\n| [setLineSeparator(separator)](#setLineSeparator(String)) | [Format](#) | Sets the string to insert whenever the formatter would normally insert a line break. |\n| [setOmitDeclaration(omitDeclaration)](#setOmitDeclaration(Boolean)) | [Format](#) | Sets whether the formatter should omit the XML declaration, such as `\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e`. |\n| [setOmitEncoding(omitEncoding)](#setOmitEncoding(Boolean)) | [Format](#) | Sets whether the formatter should omit the encoding in the XML declaration, such as the encoding field in `\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e`. |\n\nDetailed documentation\n----------------------\n\n### `format(document)`\n\nOutputs the given [Document](/apps-script/reference/xml-service/document) as a formatted string.\n\n#### Parameters\n\n| Name | Type | Description |\n|------------|---------------------------------------------------------|------------------------|\n| `document` | [Document](/apps-script/reference/xml-service/document) | the document to format |\n\n#### Return\n\n\n`String` --- the formatted document\n\n*** ** * ** ***\n\n### `format(element)`\n\nOutputs the given [Element](/apps-script/reference/xml-service/element) node as a formatted string.\n\n#### Parameters\n\n| Name | Type | Description |\n|-----------|-------------------------------------------------------|-----------------------|\n| `element` | [Element](/apps-script/reference/xml-service/element) | the element to format |\n\n#### Return\n\n\n`String` --- the formatted element\n\n*** ** * ** ***\n\n### `set``Encoding(encoding)`\n\nSets the character encoding that the formatter should use. The `encoding` argument must\nbe an accepted XML encoding like `ISO-8859-1`, `US-ASCII`, `UTF-8`, or `UTF-16`.\n\n```javascript\n// Log an XML document with encoding that does not support certain special\n// characters.\nconst xml = '\u003croot\u003e\u003ca\u003e\u003cb\u003eಠ‿ಠ\u003c/b\u003e\u003cb\u003eಠ‿ಠ\u003c/b\u003e\u003c/a\u003e\u003c/root\u003e';\nconst document = XmlService.parse(xml);\nconst output =\n XmlService.getRawFormat().setEncoding('ISO-8859-1').format(document);\nLogger.log(output);\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|------------|----------|---------------------|\n| `encoding` | `String` | the encoding to use |\n\n#### Return\n\n\n[Format](#) --- the formatter, for chaining\n\n*** ** * ** ***\n\n### `set``Indent(indent)`\n\nSets the string used to indent child nodes relative to their parents. Setting an indent other\nthan `null` will cause the formatter to insert a line break after every node.\n\n```javascript\n// Log an XML document with each child node indented four spaces.\nconst xml = '\u003croot\u003e\u003ca\u003e\u003cb\u003eText!\u003c/b\u003e\u003cb\u003eMore text!\u003c/b\u003e\u003c/a\u003e\u003c/root\u003e';\nconst document = XmlService.parse(xml);\nconst output = XmlService.getCompactFormat().setIndent(' ').format(document);\nLogger.log(output);\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|----------|----------|-------------------|\n| `indent` | `String` | the indent to use |\n\n#### Return\n\n\n[Format](#) --- the formatter, for chaining\n\n*** ** * ** ***\n\n### `set``Line``Separator(separator)`\n\nSets the string to insert whenever the formatter would normally insert a line break. The three\npre-defined formatters have different conditions under which they insert a line break. The\ndefault line separator is `\\r\\n`.\n\n```javascript\n// Log an XML document with several spaces and a pipe character in place of line\n// breaks.\nconst xml = '\u003croot\u003e\u003ca\u003e\u003cb\u003eText!\u003c/b\u003e\u003cb\u003eMore text!\u003c/b\u003e\u003c/a\u003e\u003c/root\u003e';\nconst document = XmlService.parse(xml);\nconst output =\n XmlService.getRawFormat().setLineSeparator(' | ').format(document);\nLogger.log(output);\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|-------------|----------|----------------------|\n| `separator` | `String` | the separator to use |\n\n#### Return\n\n\n[Format](#) --- the formatter, for chaining\n\n*** ** * ** ***\n\n### `set``Omit``Declaration(omitDeclaration)`\n\nSets whether the formatter should omit the XML declaration, such as `\u003c?xml version=\"1.0\"\nencoding=\"UTF-8\"?\u003e`.\n\n#### Parameters\n\n| Name | Type | Description |\n|---------------------|-----------|-----------------------------------------------------------|\n| `omit``Declaration` | `Boolean` | `true` to omit the XML declaration; `false` to include it |\n\n#### Return\n\n\n[Format](#) --- the formatter, for chaining\n\n*** ** * ** ***\n\n### `set``Omit``Encoding(omitEncoding)`\n\nSets whether the formatter should omit the encoding in the XML declaration, such as the\nencoding field in `\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e`.\n\n#### Parameters\n\n| Name | Type | Description |\n|------------------|-----------|---------------------------------------------------------------------------|\n| `omit``Encoding` | `Boolean` | `true` to omit the encoding in the XML declaration; `false` to include it |\n\n#### Return\n\n\n[Format](#) --- the formatter, for chaining"]]