Package com.google.protobuf

## Class TextFormat

- java.lang.Object
- - com.google.protobuf.TextFormat

    public final class TextFormat
    extends java.lang.Object

Provide text parsing and formatting support for proto2 instances. The implementation largely follows google/protobuf/text_format.cc.

Author:
  wenboz@google.com Wenbo Zhu, kenton@google.com Kenton Varda

### Nested Class Summary

Nested Classes
`static class` `TextFormat.ParseException` Thrown when parsing an invalid text format message.
`static class` `TextFormat.Parser` Parser for text-format proto2 instances.

### Method Summary

All Methods Static Methods Concrete Methods
`static java.lang.String` `escapeDoubleQuotesAndBackslashes​(java.lang.String input)` Escape double quotes and backslashes in a String for unicode output of a message.
`static TextFormat.Parser` `getParser()` Return a `TextFormat.Parser` instance which can parse text-format messages.
`static void` `merge​(java.lang.CharSequence input, ExtensionRegistry extensionRegistry, Message.Builder builder)` Parse a text-format message from `input` and merge the contents into `builder`.
`static void` `merge​(java.lang.CharSequence input, Message.Builder builder)` Parse a text-format message from `input` and merge the contents into `builder`.
`static void` `merge​(java.lang.Readable input, ExtensionRegistry extensionRegistry, Message.Builder builder)` Parse a text-format message from `input` and merge the contents into `builder`.
`static void` `merge​(java.lang.Readable input, Message.Builder builder)` Parse a text-format message from `input` and merge the contents into `builder`.
`static void` `print​(MessageOrBuilder message, java.lang.Appendable output)` Outputs a textual representation of the Protocol Message supplied into the parameter output.
`static void` `print​(UnknownFieldSet fields, java.lang.Appendable output)` Outputs a textual representation of `fields` to `output`.
`static void` `printField​(Descriptors.FieldDescriptor field, java.lang.Object value, java.lang.Appendable output)`
`static java.lang.String` `printFieldToString​(Descriptors.FieldDescriptor field, java.lang.Object value)`
`static void` `printFieldValue​(Descriptors.FieldDescriptor field, java.lang.Object value, java.lang.Appendable output)` Outputs a textual representation of the value of given field value.
`static java.lang.String` `printToString​(MessageOrBuilder message)` Like `print()`, but writes directly to a `String` and returns it.
`static java.lang.String` `printToString​(UnknownFieldSet fields)` Like `print()`, but writes directly to a `String` and returns it.
`static java.lang.String` `printToUnicodeString​(MessageOrBuilder message)` Same as `printToString()`, except that non-ASCII characters in string type fields are not escaped in backslash+octals.
`static java.lang.String` `printToUnicodeString​(UnknownFieldSet fields)` Same as `printToString()`, except that non-ASCII characters in string type fields are not escaped in backslash+octals.
`static void` `printUnicode​(MessageOrBuilder message, java.lang.Appendable output)` Same as `print()`, except that non-ASCII characters are not escaped.
`static void` `printUnicode​(UnknownFieldSet fields, java.lang.Appendable output)` Same as `print()`, except that non-ASCII characters are not escaped.
`static void` `printUnknownFieldValue​(int tag, java.lang.Object value, java.lang.Appendable output)` Outputs a textual representation of the value of an unknown field.
`static java.lang.String` `shortDebugString​(MessageOrBuilder message)` Generates a human readable form of this message, useful for debugging and other purposes, with no newline characters.
`static java.lang.String` `shortDebugString​(UnknownFieldSet fields)` Generates a human readable form of the unknown fields, useful for debugging and other purposes, with no newline characters.
`static java.lang.String` `unsignedToString​(int value)` Convert an unsigned 32-bit integer to a string.
`static java.lang.String` `unsignedToString​(long value)` Convert an unsigned 64-bit integer to a string.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### print

    public static void print​(MessageOrBuilder message,
                             java.lang.Appendable output)
                      throws java.io.IOException

Outputs a textual representation of the Protocol Message supplied into the parameter output. (This representation is the new version of the classic "ProtocolPrinter" output from the original Protocol Buffer system)

Throws:
  `java.io.IOException`

#### print

    public static void print​(UnknownFieldSet fields,
                             java.lang.Appendable output)
                      throws java.io.IOException

Outputs a textual representation of `fields` to `output`.

Throws:
  `java.io.IOException`

#### printUnicode

    public static void printUnicode​(MessageOrBuilder message,
                                    java.lang.Appendable output)
                             throws java.io.IOException

Same as `print()`, except that non-ASCII characters are not escaped.

Throws:
  `java.io.IOException`

#### printUnicode

    public static void printUnicode​(UnknownFieldSet fields,
                                    java.lang.Appendable output)
                             throws java.io.IOException

Same as `print()`, except that non-ASCII characters are not escaped.

Throws:
  `java.io.IOException`

#### shortDebugString

    public static java.lang.String shortDebugString​(MessageOrBuilder message)

Generates a human readable form of this message, useful for debugging and other purposes, with no newline characters.

#### shortDebugString

    public static java.lang.String shortDebugString​(UnknownFieldSet fields)

Generates a human readable form of the unknown fields, useful for debugging and other purposes, with no newline characters.

#### printToString

    public static java.lang.String printToString​(MessageOrBuilder message)

Like `print()`, but writes directly to a `String` and returns it.

#### printToString

    public static java.lang.String printToString​(UnknownFieldSet fields)

Like `print()`, but writes directly to a `String` and returns it.

#### printToUnicodeString

    public static java.lang.String printToUnicodeString​(MessageOrBuilder message)

Same as `printToString()`, except that non-ASCII characters in string type fields are not escaped in backslash+octals.

#### printToUnicodeString

    public static java.lang.String printToUnicodeString​(UnknownFieldSet fields)

Same as `printToString()`, except that non-ASCII characters in string type fields are not escaped in backslash+octals.

#### printField

    public static void printField​(Descriptors.FieldDescriptor field,
                                  java.lang.Object value,
                                  java.lang.Appendable output)
                           throws java.io.IOException

Throws:
  `java.io.IOException`

#### printFieldToString

    public static java.lang.String printFieldToString​(Descriptors.FieldDescriptor field,
                                                      java.lang.Object value)

#### printFieldValue

    public static void printFieldValue​(Descriptors.FieldDescriptor field,
                                       java.lang.Object value,
                                       java.lang.Appendable output)
                                throws java.io.IOException

Outputs a textual representation of the value of given field value.

Parameters:
  `field` - the descriptor of the field
  `value` - the value of the field
  `output` - the output to which to append the formatted value
Throws:
  `java.lang.ClassCastException` - if the value is not appropriate for the given field descriptor
  `java.io.IOException` - if there is an exception writing to the output

#### printUnknownFieldValue

    public static void printUnknownFieldValue​(int tag,
                                              java.lang.Object value,
                                              java.lang.Appendable output)
                                       throws java.io.IOException

Outputs a textual representation of the value of an unknown field.

Parameters:
  `tag` - the field's tag number
  `value` - the value of the field
  `output` - the output to which to append the formatted value
Throws:
  `java.lang.ClassCastException` - if the value is not appropriate for the given field descriptor
  `java.io.IOException` - if there is an exception writing to the output

#### unsignedToString

    public static java.lang.String unsignedToString​(int value)

Convert an unsigned 32-bit integer to a string.

#### unsignedToString

    public static java.lang.String unsignedToString​(long value)

Convert an unsigned 64-bit integer to a string.

#### getParser

    public static TextFormat.Parser getParser()

Return a `TextFormat.Parser` instance which can parse text-format messages. The returned instance is thread-safe.

#### merge

    public static void merge​(java.lang.Readable input,
                             Message.Builder builder)
                      throws java.io.IOException

Parse a text-format message from `input` and merge the contents into `builder`.

Throws:
  `java.io.IOException`

#### merge

    public static void merge​(java.lang.CharSequence input,
                             Message.Builder builder)
                      throws TextFormat.ParseException

Parse a text-format message from `input` and merge the contents into `builder`.

Throws:
  `TextFormat.ParseException`

#### merge

    public static void merge​(java.lang.Readable input,
                             ExtensionRegistry extensionRegistry,
                             Message.Builder builder)
                      throws java.io.IOException

Parse a text-format message from `input` and merge the contents into `builder`. Extensions will be recognized if they are registered in `extensionRegistry`.

Throws:
  `java.io.IOException`

#### merge

    public static void merge​(java.lang.CharSequence input,
                             ExtensionRegistry extensionRegistry,
                             Message.Builder builder)
                      throws TextFormat.ParseException

Parse a text-format message from `input` and merge the contents into `builder`. Extensions will be recognized if they are registered in `extensionRegistry`.

Throws:
  `TextFormat.ParseException`

#### escapeDoubleQuotesAndBackslashes

    public static java.lang.String escapeDoubleQuotesAndBackslashes​(java.lang.String input)

Escape double quotes and backslashes in a String for unicode output of a message.