encodeString              package:base              R Documentation

Encode Character Vector as for Printing

Description:

     'encodeString' escapes the strings in a character vector in the
     same way 'print.default' does, and optionally fits the encoded
     strings within a field width.

Usage:

     encodeString(x, width = 0, quote = "", na.encode = TRUE,
                  justify = c("left", "right", "centre", "none"))

Arguments:

       x: A character vector, or an object that can be coerced to one
          by 'as.character'.

   width: integer: the minimum field width.  If 'NULL' or 'NA', this is
          taken to be the largest field width needed for any element of
          'x'.

   quote: character: quoting character, if any.

na.encode: logical: should 'NA' strings be encoded?

 justify: character: partial matches are allowed.  If padding to the
          minimum field width is needed, how should spaces be inserted?
          'justify == "none"' is equivalent to 'width = 0', for
          consistency with 'format.default'.

Details:

     This escapes backslash and the control characters '\a' (bell),
     '\b' (backspace), '\f' (formfeed), '\n' (line feed), '\r'
     (carriage return), '\t' (tab) and '\v' (vertical tab) as well as
     any non-printable characters in a single-byte locale, which are
     printed in octal notation ('\xyz' with leading zeroes). (Which
     characters are non-printable depends on the current locale.) See
     'print.default' for how non-printable characters are handled in
     multi-byte locales.

     If 'quote' is a single or double quote any embedded quote of the
     same type is escaped.  Note that justification is of the quoted
     string, hence spaces are added outside the quotes.

Value:

     A character vector of the same length as 'x', with the same
     attributes (including names and dimensions) but with no class set.

Note:

     The default for 'width' is different from 'format.default', which
     does similar things for character vectors but without encoding
     using escapes.

See Also:

     'print.default'

Examples:

     x <- "ab\bc\ndef"
     print(x)
     cat(x) # interprets escapes
     cat(encodeString(x), "\n", sep="") # similar to print()

     factor(x) # makes use of this to print the levels

     x <- c("a", "ab", "abcde")
     encodeString(x, width = NA) # left justification
     encodeString(x, width = NA, justify = "c")
     encodeString(x, width = NA, justify = "r")
     encodeString(x, width = NA, quote = "'", justify = "r")

