org.apache.tomcat.util.buf

## Class UEncoder

- java.lang.Object
- - org.apache.tomcat.util.buf.UEncoder

-     public final class UEncoder
      extends Object

  Efficient implementation of an UTF-8 encoder. This class is not thread safe - you need one encoder per thread. The encoder will save and recycle the internal objects, avoiding garbage. You can add extra characters that you want preserved, for example while encoding a URL you can add "/".
  Author:
    Costin Manolache

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `UEncoder.SafeCharsSet`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `UEncoder(UEncoder.SafeCharsSet safeCharsSet)` Create a UEncoder with an unmodifiable safe character set.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `CharChunk` | `encodeURL(String s, int start, int end)` URL Encode string, using a specified encoding.
    `protected void` | `urlEncode(CharChunk out, ByteChunk bb)`

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

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

- - ### Constructor Detail

    - #### UEncoder

          public UEncoder(UEncoder.SafeCharsSet safeCharsSet)

      Create a UEncoder with an unmodifiable safe character set.
      Parameters:
        `safeCharsSet` - safe characters for this encoder

  - ### Method Detail

    - #### encodeURL

          public CharChunk encodeURL(String s,
                            int start,
                            int end)
                              throws IOException

      URL Encode string, using a specified encoding.
      Parameters:
        `s` - string to be encoded
        `start` - the beginning index, inclusive
        `end` - the ending index, exclusive
      Returns:
        A new CharChunk contained the URL encoded string
      Throws:
        `IOException` - If an I/O error occurs

    - #### urlEncode

          protected void urlEncode(CharChunk out,
                       ByteChunk bb)
                            throws IOException

      Throws:
        `IOException`

Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.