Class URLEncodedUtils

java.lang.Object
org.apache.http.client.utils.URLEncodedUtils

@Immutable public class URLEncodedUtils extends Object
A collection of utilities for encoding URLs.
Since:
4.0
  • Field Details

  • Constructor Details

    • URLEncodedUtils

      public URLEncodedUtils()
  • Method Details

    • parse

      public static List<NameValuePair> parse(URI uri, String charset)
      Returns a list of NameValuePairs as built from the URI's query portion. For example, a URI of http://example.org/path/to/file?a=1invalid input: '&b'=2invalid input: '&c'=3 would return a list of three NameValuePairs, one for a=1, one for b=2, and one for c=3. By convention, '&' and ';' are accepted as parameter separators.

      This is typically useful while parsing an HTTP PUT. This API is currently only used for testing.

      Parameters:
      uri - URI to parse
      charset - Charset name to use while parsing the query
      Returns:
      a list of NameValuePair as built from the URI's query portion.
    • parse

      public static List<NameValuePair> parse(HttpEntity entity) throws IOException
      Returns a list of NameValuePairs as parsed from an HttpEntity. The encoding is taken from the entity's Content-Encoding header.

      This is typically used while parsing an HTTP POST.

      Parameters:
      entity - The entity to parse
      Returns:
      a list of NameValuePair as built from the URI's query portion.
      Throws:
      IOException - If there was an exception getting the entity's data.
    • isEncoded

      public static boolean isEncoded(HttpEntity entity)
      Returns true if the entity's Content-Type header is application/x-www-form-urlencoded.
    • parse

      public static void parse(List<NameValuePair> parameters, Scanner scanner, String charset)
      Adds all parameters within the Scanner to the list of parameters, as encoded by encoding. For example, a scanner containing the string a=1invalid input: '&b'=2invalid input: '&c'=3 would add the NameValuePairs a=1, b=2, and c=3 to the list of parameters. By convention, '&' and ';' are accepted as parameter separators.
      Parameters:
      parameters - List to add parameters to.
      scanner - Input that contains the parameters to parse.
      charset - Encoding to use when decoding the parameters.
    • parse

      public static void parse(List<NameValuePair> parameters, Scanner scanner, String parameterSepartorPattern, String charset)
      Adds all parameters within the Scanner to the list of parameters, as encoded by encoding. For example, a scanner containing the string a=1invalid input: '&b'=2invalid input: '&c'=3 would add the NameValuePairs a=1, b=2, and c=3 to the list of parameters.
      Parameters:
      parameters - List to add parameters to.
      scanner - Input that contains the parameters to parse.
      parameterSepartorPattern - The Pattern string for parameter separators, by convention "[&;]"
      charset - Encoding to use when decoding the parameters.
    • parse

      public static List<NameValuePair> parse(String s, Charset charset)
      Returns a list of NameValuePairs as parsed from the given string using the given character encoding. By convention, '&' and ';' are accepted as parameter separators.
      Parameters:
      s - text to parse.
      charset - Encoding to use when decoding the parameters.
      Returns:
      a list of NameValuePair as built from the URI's query portion.
      Since:
      4.2
    • parse

      public static List<NameValuePair> parse(String s, Charset charset, char... parameterSeparator)
      Returns a list of NameValuePairs as parsed from the given string using the given character encoding.
      Parameters:
      s - text to parse.
      charset - Encoding to use when decoding the parameters.
      parameterSeparator - The characters used to separate parameters, by convention, '&' and ';'.
      Returns:
      a list of NameValuePair as built from the URI's query portion.
      Since:
      4.3
    • format

      public static String format(List<? extends NameValuePair> parameters, String charset)
      Returns a String that is suitable for use as an application/x-www-form-urlencoded list of parameters in an HTTP PUT or HTTP POST.
      Parameters:
      parameters - The parameters to include.
      charset - The encoding to use.
      Returns:
      An application/x-www-form-urlencoded string
    • format

      public static String format(List<? extends NameValuePair> parameters, char parameterSeparator, String charset)
      Returns a String that is suitable for use as an application/x-www-form-urlencoded list of parameters in an HTTP PUT or HTTP POST.
      Parameters:
      parameters - The parameters to include.
      parameterSeparator - The parameter separator, by convention, '&' or ';'.
      charset - The encoding to use.
      Returns:
      An application/x-www-form-urlencoded string
      Since:
      4.3
    • format

      public static String format(Iterable<? extends NameValuePair> parameters, Charset charset)
      Returns a String that is suitable for use as an application/x-www-form-urlencoded list of parameters in an HTTP PUT or HTTP POST.
      Parameters:
      parameters - The parameters to include.
      charset - The encoding to use.
      Returns:
      An application/x-www-form-urlencoded string
      Since:
      4.2
    • format

      public static String format(Iterable<? extends NameValuePair> parameters, char parameterSeparator, Charset charset)
      Returns a String that is suitable for use as an application/x-www-form-urlencoded list of parameters in an HTTP PUT or HTTP POST.
      Parameters:
      parameters - The parameters to include.
      parameterSeparator - The parameter separator, by convention, '&' or ';'.
      charset - The encoding to use.
      Returns:
      An application/x-www-form-urlencoded string
      Since:
      4.3