MimeType (Java Platform SE 8 )
Keywords: javax.activation.MimeType class
Date: 2026-03-16

javax.activation

## Class MimeType

- java.lang.Object
- - javax.activation.MimeType

- All Implemented Interfaces:
    Externalizable, Serializable

      public class MimeType
      extends Object
      implements Externalizable

  A Multipurpose Internet Mail Extension (MIME) type, as defined in RFC 2045 and 2046.
  Since:
    1.6
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `MimeType()` Default constructor.
    `MimeType(String rawdata)` Constructor that builds a MimeType from a String.
    `MimeType(String primary, String sub)` Constructor that builds a MimeType with the given primary and sub type but has an empty parameter list.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getBaseType()` Return a String representation of this object without the parameter list.
    `String` | `getParameter(String name)` Retrieve the value associated with the given name, or null if there is no current association.
    `MimeTypeParameterList` | `getParameters()` Retrieve this object's parameter list.
    `String` | `getPrimaryType()` Retrieve the primary type of this object.
    `String` | `getSubType()` Retrieve the subtype of this object.
    `boolean` | `match(MimeType type)` Determine if the primary and sub type of this object is the same as what is in the given type.
    `boolean` | `match(String rawdata)` Determine if the primary and sub type of this object is the same as the content type described in rawdata.
    `void` | `readExternal(ObjectInput in)` The object implements the readExternal method to restore its contents by calling the methods of DataInput for primitive types and readObject for objects, strings and arrays.
    `void` | `removeParameter(String name)` Remove any value associated with the given name.
    `void` | `setParameter(String name, String value)` Set the value to be associated with the given name, replacing any previous association.
    `void` | `setPrimaryType(String primary)` Set the primary type for this object to the given String.
    `void` | `setSubType(String sub)` Set the subtype for this object to the given String.
    `String` | `toString()` Return the String representation of this object.
    `void` | `writeExternal(ObjectOutput out)` The object implements the writeExternal method to save its contents by calling the methods of DataOutput for its primitive values or calling the writeObject method of ObjectOutput for objects, strings and arrays.

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

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

- - ### Constructor Detail

    - #### MimeType

          public MimeType()

      Default constructor.

    - #### MimeType

          public MimeType(String rawdata)
                   throws MimeTypeParseException

      Constructor that builds a MimeType from a String.
      Parameters:
        `rawdata` - the MIME type string
      Throws:
        `MimeTypeParseException`

    - #### MimeType

          public MimeType(String primary,
                          String sub)
                   throws MimeTypeParseException

      Constructor that builds a MimeType with the given primary and sub type but has an empty parameter list.
      Parameters:
        `primary` - the primary MIME type
        `sub` - the MIME sub-type
      Throws:
        `MimeTypeParseException` - if the primary type or subtype is not a valid token

  - ### Method Detail

    - #### getPrimaryType

          public String getPrimaryType()

      Retrieve the primary type of this object.
      Returns:
        the primary MIME type

    - #### setPrimaryType

          public void setPrimaryType(String primary)
                              throws MimeTypeParseException

      Set the primary type for this object to the given String.
      Parameters:
        `primary` - the primary MIME type
      Throws:
        `MimeTypeParseException` - if the primary type is not a valid token

    - #### getSubType

          public String getSubType()

      Retrieve the subtype of this object.
      Returns:
        the MIME subtype

    - #### setSubType

          public void setSubType(String sub)
                          throws MimeTypeParseException

      Set the subtype for this object to the given String.
      Parameters:
        `sub` - the MIME subtype
      Throws:
        `MimeTypeParseException` - if the subtype is not a valid token

    - #### getParameters

          public MimeTypeParameterList getParameters()

      Retrieve this object's parameter list.
      Returns:
        a MimeTypeParameterList object representing the parameters

    - #### getParameter

          public String getParameter(String name)

      Retrieve the value associated with the given name, or null if there is no current association.
      Parameters:
        `name` - the parameter name
      Returns:
        the paramter's value

    - #### setParameter

          public void setParameter(String name,
                                   String value)

      Set the value to be associated with the given name, replacing any previous association.
      Parameters:
        `name` - the parameter name
        `value` - the paramter's value

    - #### removeParameter

          public void removeParameter(String name)

      Remove any value associated with the given name.
      Parameters:
        `name` - the parameter name

    - #### toString

          public String toString()

      Return the String representation of this object.
      Overrides:
        `toString` in class `Object`
      Returns:
        a string representation of the object.

    - #### getBaseType

          public String getBaseType()

      Return a String representation of this object without the parameter list.
      Returns:
        the MIME type and sub-type

    - #### match

          public boolean match(MimeType type)

      Determine if the primary and sub type of this object is the same as what is in the given type.
      Parameters:
        `type` - the MimeType object to compare with
      Returns:
        true if they match

    - #### match

          public boolean match(String rawdata)
                        throws MimeTypeParseException

      Determine if the primary and sub type of this object is the same as the content type described in rawdata.
      Parameters:
        `rawdata` - the MIME type string to compare with
      Returns:
        true if they match
      Throws:
        `MimeTypeParseException`

    - #### writeExternal

          public void writeExternal(ObjectOutput out)
                             throws IOException

      The object implements the writeExternal method to save its contents by calling the methods of DataOutput for its primitive values or calling the writeObject method of ObjectOutput for objects, strings and arrays.
      Specified by:
        `writeExternal` in interface `Externalizable`
      Parameters:
        `out` - the ObjectOutput object to write to
      Throws:
        `IOException` - Includes any I/O exceptions that may occur

    - #### readExternal

          public void readExternal(ObjectInput in)
                            throws IOException,
                                   ClassNotFoundException

      The object implements the readExternal method to restore its contents by calling the methods of DataInput for primitive types and readObject for objects, strings and arrays. The readExternal method must read the values in the same sequence and with the same types as were written by writeExternal.
      Specified by:
        `readExternal` in interface `Externalizable`
      Parameters:
        `in` - the ObjectInput object to read from
      Throws:
        `ClassNotFoundException` - If the class for an object being restored cannot be found.
        `IOException` - if I/O errors occur

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.