java values constructor - Interface / enum listant les constantes de type mime standard
peut-être un début ici: http://docs.oracle.com/javaee/6/api/javax/ws/rs/core/MediaType.html
staticjava.lang.String APPLICATION_ATOM_XML "application/atom+xml"
staticMediaType APPLICATION_ATOM_XML_TYPE "application/atom+xml"
staticjava.lang.String APPLICATION_FORM_URLENCODED "application/x-www-form-urlencoded"
staticMediaType APPLICATION_FORM_URLENCODED_TYPE "application/x-www-form-urlencoded"
staticjava.lang.String APPLICATION_JSON "application/json"
staticMediaType APPLICATION_JSON_TYPE "application/json"
staticjava.lang.String APPLICATION_OCTET_STREAM "application/octet-stream"
staticMediaType APPLICATION_OCTET_STREAM_TYPE "application/octet-stream"
staticjava.lang.String APPLICATION_SVG_XML "application/svg+xml"
staticMediaType APPLICATION_SVG_XML_TYPE "application/svg+xml"
staticjava.lang.String APPLICATION_XHTML_XML "application/xhtml+xml"
staticMediaType APPLICATION_XHTML_XML_TYPE "application/xhtml+xml"
staticjava.lang.String APPLICATION_XML "application/xml"
staticMediaType APPLICATION_XML_TYPE "application/xml"
staticjava.lang.String MEDIA_TYPE_WILDCARD The value of a type or subtype wildcard: "*"
staticjava.lang.String MULTIPART_FORM_DATA "multipart/form-data"
staticMediaType MULTIPART_FORM_DATA_TYPE "multipart/form-data"
staticjava.lang.String TEXT_HTML "text/html"
staticMediaType TEXT_HTML_TYPE "text/html"
staticjava.lang.String TEXT_PLAIN "text/plain"
staticMediaType TEXT_PLAIN_TYPE "text/plain"
staticjava.lang.String TEXT_XML "text/xml"
staticMediaType TEXT_XML_TYPE "text/xml"
staticjava.lang.String WILDCARD "*/*"
staticMediaType WILDCARD_TYPE "*/*"
Je cherche parmi les librairies standards (comme les commons apache, jax, jboss, javax) pour une interface ou une énumération qui liste les valeurs de tous les mime-type standard (aka content-type).
Cette interface ne devrait pas être trop encombrée par d'autres classes qui rendraient difficile l'inclusion de tout le paquet en tant que code source gwt.
par exemple
interface ContentType{
String JSON = "Application/JSON";
blah ... blah ...
}
ou,
enum ContentType{
JSON("Application/JSON"),
blah ... blah ...
}
Il y a maintenant aussi la classe org.apache.http.entity.ContentType
du paquet org.apache.httpcomponents.httpcore
, à partir de la version 4.2.
Java 7 à la rescousse!
Vous pouvez passer le fichier ou le nom du fichier et il retournera le type MIME.
String mimeType = MimetypesFileTypeMap
.getDefaultFileTypeMap()
.getContentType(attachment.getFileName());
http://docs.oracle.com/javase/7/docs/api/javax/activation/MimetypesFileTypeMap.html
Si vous êtes sur Android, vous avez plusieurs choix, où seul le premier est une sorte d '"enum":
-
HTTP
(qui a été déprécié dans API 22), par exemple
HTTP.PLAIN_TEXT_TYPE
ou -
MimeTypeMap
, par exemple
final String mime = MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
Voir aussiFileProvider.getType()
. -
URLConnection
qui fournit les méthodes suivantes:
Par exemple
@Override
public String getType(Uri uri) {
return URLConnection.getFileNameMap().getContentTypeFor(
uri.getLastPathSegment());
}
Comme indiqué par une réponse ci-dessus, vous pouvez utiliser javax.ws.rs.core.MediaType
qui a les constantes requises.
Je voulais aussi partager un lien très cool et pratique qui, je l'ai trouvé, donne une référence à toutes les constantes Javax dans un seul endroit - https://docs.oracle.com/javaee/7/api/constant-values.html .