Home Artikelen Getting MIME types from extension

15

Feb

2007

Getting MIME types from extension

Voor een implementatie voor het serveren van attachments moest ik de MIME specificeren. Omdat ik mijn code generiek wil houden, ben ik aan de slag gegaan om niet alleen de MIME types te specificeren die ik op dit moment moet serveren. En dat is de reden dat ik MimeTypes.cs geintroduceerd heb in mijn project.

Omdat ik vast niet de enige ben die dit nodig heeft, wil ik het delen.

Source code

using System;
using System.Collections;
 
namespace Born2Code.Net
{
    public class MimeTypes
    {
        /// <summary>
        /// The culture invariant and case-insensitive hashtable that 
        /// holds the know extension with there MIME type.
        /// </summary>
        private static Hashtable _mimeTypes;
 
        /// <summary>
        /// Initializes the <see cref="MimeTypes"/> class.
        /// </summary>
        private static MimeTypes()
        {
            // Create an culture invariant and case-insensitive hashtable.
            _mimeTypes = new Hashtable(StringComparer.InvariantCultureIgnoreCase)
 
            // Add all known extensions with there MIME type.
            // If you want to add an extension you can do it here.
            _mimeTypes.Add(".3dm", "x-world/x-3dmf");
            _mimeTypes.Add(".3dmf", "x-world/x-3dmf");
            _mimeTypes.Add(".aab", "application/x-authorware-bin");
            _mimeTypes.Add(".aam", "application/x-authorware-map");
            _mimeTypes.Add(".aas", "application/x-authorware-seg");
            _mimeTypes.Add(".abc", "text/vnd.abc");
            _mimeTypes.Add(".acgi", "text/html");
            _mimeTypes.Add(".afl", "video/animaflex");
            _mimeTypes.Add(".ai", "application/postscript");
            _mimeTypes.Add(".aif", "audio/aiff");
            _mimeTypes.Add(".aifc", "audio/aiff");
            _mimeTypes.Add(".aiff", "audio/aiff");
            _mimeTypes.Add(".aim", "application/x-aim");
            _mimeTypes.Add(".aip", "text/x-audiosoft-intra");
            _mimeTypes.Add(".ani", "application/x-navi-animation");
            _mimeTypes.Add(".aos", "application/x-nokia-9000-communicator-add-on-software");
            _mimeTypes.Add(".aps", "application/mime");
            _mimeTypes.Add(".art", "image/x-jg");
            _mimeTypes.Add(".asf", "video/x-ms-asf");
            _mimeTypes.Add(".asm", "text/x-asm");
            _mimeTypes.Add(".asp", "text/asp");
            _mimeTypes.Add(".asx", "application/x-mplayer2″);
            _mimeTypes.Add(".au", "audio/x-au");
            _mimeTypes.Add(".avi", "video/avi");
            _mimeTypes.Add(".avs", "video/avs-video");
            _mimeTypes.Add(".bcpio", "application/x-bcpio");
            _mimeTypes.Add(".bm", "image/bmp");
            _mimeTypes.Add(".bmp", "image/bmp");
            _mimeTypes.Add(".boo", "application/book");
            _mimeTypes.Add(".book", "application/book");
            _mimeTypes.Add(".boz", "application/x-bzip2″);
            _mimeTypes.Add(".bsh", "application/x-bsh");
            _mimeTypes.Add(".bz", "application/x-bzip");
            _mimeTypes.Add(".bz2″, "application/x-bzip2″);
            _mimeTypes.Add(".c", "text/plain");
            _mimeTypes.Add(".c++", "text/plain");
            _mimeTypes.Add(".cat", "application/vnd.ms-pki.seccat");
            _mimeTypes.Add(".cc", "text/plain");
            _mimeTypes.Add(".ccad", "application/clariscad");
            _mimeTypes.Add(".cco", "application/x-cocoa");
            _mimeTypes.Add(".cdf", "application/cdf");
            _mimeTypes.Add(".cer", "application/pkix-cert");
            _mimeTypes.Add(".cha", "application/x-chat");
            _mimeTypes.Add(".chat", "application/x-chat");
            _mimeTypes.Add(".class", "application/java");
            _mimeTypes.Add(".conf", "text/plain");
            _mimeTypes.Add(".cpio", "application/x-cpio");
            _mimeTypes.Add(".cpp", "text/plain");
            _mimeTypes.Add(".cpt", "application/x-cpt");
            _mimeTypes.Add(".crl", "application/pkix-crl");
            _mimeTypes.Add(".crt", "application/pkix-cert");
            _mimeTypes.Add(".csh", "application/x-csh");
            _mimeTypes.Add(".css", "text/css");
            _mimeTypes.Add(".cxx", "text/plain");
            _mimeTypes.Add(".dcr", "application/x-director");
            _mimeTypes.Add(".deepv", "application/x-deepv");
            _mimeTypes.Add(".def", "text/plain");
            _mimeTypes.Add(".der", "application/x-x509-ca-cert");
            _mimeTypes.Add(".dif", "video/x-dv");
            _mimeTypes.Add(".dir", "application/x-director");
            _mimeTypes.Add(".dl", "video/dl");
            _mimeTypes.Add(".doc", "application/msword");
            _mimeTypes.Add(".dot", "application/msword");
            _mimeTypes.Add(".dp", "application/commonground");
            _mimeTypes.Add(".drw", "application/drafting");
            _mimeTypes.Add(".dv", "video/x-dv");
            _mimeTypes.Add(".dvi", "application/x-dvi");
            _mimeTypes.Add(".dwf", "drawing/x-dwf (old)");
            _mimeTypes.Add(".dwg", "application/acad");
            _mimeTypes.Add(".dxf", "application/dxf");
            _mimeTypes.Add(".dxr", "application/x-director");
            _mimeTypes.Add(".el", "text/x-script.elisp");
            _mimeTypes.Add(".elc", "application/x-elc");
            _mimeTypes.Add(".eps", "application/postscript");
            _mimeTypes.Add(".es", "application/x-esrehber");
            _mimeTypes.Add(".etx", "text/x-setext");
            _mimeTypes.Add(".evy", "application/envoy");
            _mimeTypes.Add(".f", "text/plain");
            _mimeTypes.Add(".f77″, "text/plain");
            _mimeTypes.Add(".f90″, "text/plain");
            _mimeTypes.Add(".fdf", "application/vnd.fdf");
            _mimeTypes.Add(".fif", "image/fif");
            _mimeTypes.Add(".fli", "video/fli");
            _mimeTypes.Add(".flo", "image/florian");
            _mimeTypes.Add(".flx", "text/vnd.fmi.flexstor");
            _mimeTypes.Add(".fmf", "video/x-atomic3d-feature");
            _mimeTypes.Add(".for", "text/plain");
            _mimeTypes.Add(".fpx", "image/vnd.fpx");
            _mimeTypes.Add(".frl", "application/freeloader");
            _mimeTypes.Add(".funk", "audio/make");
            _mimeTypes.Add(".g", "text/plain");
            _mimeTypes.Add(".g3″, "image/g3fax");
            _mimeTypes.Add(".gif", "image/gif");
            _mimeTypes.Add(".gl", "video/gl");
            _mimeTypes.Add(".gsd", "audio/x-gsm");
            _mimeTypes.Add(".gsm", "audio/x-gsm");
            _mimeTypes.Add(".gsp", "application/x-gsp");
            _mimeTypes.Add(".gss", "application/x-gss");
            _mimeTypes.Add(".gtar", "application/x-gtar");
            _mimeTypes.Add(".gz", "application/x-gzip");
            _mimeTypes.Add(".gzip", "application/x-gzip");
            _mimeTypes.Add(".h", "text/plain");
            _mimeTypes.Add(".hdf", "application/x-hdf");
            _mimeTypes.Add(".help", "application/x-helpfile");
            _mimeTypes.Add(".hgl", "application/vnd.hp-HPGL");
            _mimeTypes.Add(".hh", "text/plain");
            _mimeTypes.Add(".hlb", "text/x-script");
            _mimeTypes.Add(".hlp", "application/x-helpfile");
            _mimeTypes.Add(".hpg", "application/vnd.hp-HPGL");
            _mimeTypes.Add(".hpgl", "application/vnd.hp-HPGL");
            _mimeTypes.Add(".hqx", "application/binhex");
            _mimeTypes.Add(".hta", "application/hta");
            _mimeTypes.Add(".htc", "text/x-component");
            _mimeTypes.Add(".htm", "text/html");
            _mimeTypes.Add(".html", "text/html");
            _mimeTypes.Add(".htmls", "text/html");
            _mimeTypes.Add(".htt", "text/webviewhtml");
            _mimeTypes.Add(".htx", "text/html");
            _mimeTypes.Add(".ice", "x-conference/x-cooltalk");
            _mimeTypes.Add(".ico", "image/x-icon");
            _mimeTypes.Add(".idc", "text/plain");
            _mimeTypes.Add(".ief", "image/ief");
            _mimeTypes.Add(".iefs", "image/ief");
            _mimeTypes.Add(".iges", "application/iges");
            _mimeTypes.Add(".igs", "application/iges");
            _mimeTypes.Add(".ima", "application/x-ima");
            _mimeTypes.Add(".imap", "application/x-httpd-imap");
            _mimeTypes.Add(".inf", "application/inf");
            _mimeTypes.Add(".ins", "application/x-internett-signup");
            _mimeTypes.Add(".ip", "application/x-ip2″);
            _mimeTypes.Add(".isu", "video/x-isvideo");
            _mimeTypes.Add(".it", "audio/it");
            _mimeTypes.Add(".iv", "application/x-inventor");
            _mimeTypes.Add(".ivr", "i-world/i-vrml");
            _mimeTypes.Add(".ivy", "application/x-livescreen");
            _mimeTypes.Add(".jam", "audio/x-jam");
            _mimeTypes.Add(".jav", "text/plain");
            _mimeTypes.Add(".java", "text/plain");
            _mimeTypes.Add(".jcm", "application/x-java-commerce");
            _mimeTypes.Add(".jfif", "image/jpeg");
            _mimeTypes.Add(".jfif-tbnl", "image/jpeg");
            _mimeTypes.Add(".jpe", "image/jpeg");
            _mimeTypes.Add(".jpeg", "image/jpeg");
            _mimeTypes.Add(".jpg", "image/jpeg");
            _mimeTypes.Add(".jps", "image/x-jps");
            _mimeTypes.Add(".js", "application/x-javascript");
            _mimeTypes.Add(".jut", "image/jutvision");
            _mimeTypes.Add(".kar", "audio/midi");
            _mimeTypes.Add(".ksh", "text/x-script.ksh");
            _mimeTypes.Add(".la", "audio/nspaudio");
            _mimeTypes.Add(".lam", "audio/x-liveaudio");
            _mimeTypes.Add(".latex", "application/x-latex");
            _mimeTypes.Add(".list", "text/plain");
            _mimeTypes.Add(".lma", "audio/nspaudio");
            _mimeTypes.Add(".log", "text/plain");
            _mimeTypes.Add(".lsp", "application/x-lisp");
            _mimeTypes.Add(".lst", "text/plain");
            _mimeTypes.Add(".lsx", "text/x-la-asf");
            _mimeTypes.Add(".ltx", "application/x-latex");
            _mimeTypes.Add(".m", "text/plain");
            _mimeTypes.Add(".m1v", "video/mpeg");
            _mimeTypes.Add(".m2a", "audio/mpeg");
            _mimeTypes.Add(".m2v", "video/mpeg");
            _mimeTypes.Add(".m3u", "audio/x-mpequrl");
            _mimeTypes.Add(".man", "application/x-troff-man");
            _mimeTypes.Add(".map", "application/x-navimap");
            _mimeTypes.Add(".mar", "text/plain");
            _mimeTypes.Add(".mbd", "application/mbedlet");
            _mimeTypes.Add(".mc$", "application/x-magic-cap-package-1.0″);
            _mimeTypes.Add(".mcd", "application/mcad");
            _mimeTypes.Add(".mcf", "image/vasa");
            _mimeTypes.Add(".mcp", "application/netmc");
            _mimeTypes.Add(".me", "application/x-troff-me");
            _mimeTypes.Add(".mht", "message/rfc822″);
            _mimeTypes.Add(".mhtml", "message/rfc822″);
            _mimeTypes.Add(".mid", "audio/midi");
            _mimeTypes.Add(".midi", "audio/midi");
            _mimeTypes.Add(".mif", "application/x-mif");
            _mimeTypes.Add(".mime", "message/rfc822″);
            _mimeTypes.Add(".mjf", "audio/x-vnd.AudioExplosion.MjuiceMediaFile");
            _mimeTypes.Add(".mjpg", "video/x-motion-jpeg");
            _mimeTypes.Add(".mm", "application/base64″);
            _mimeTypes.Add(".mme", "application/base64″);
            _mimeTypes.Add(".mod", "audio/mod");
            _mimeTypes.Add(".moov", "video/quicktime");
            _mimeTypes.Add(".mov", "video/quicktime");
            _mimeTypes.Add(".movie", "video/x-sgi-movie");
            _mimeTypes.Add(".mp2″, "video/mpeg");
            _mimeTypes.Add(".mp3″, "audio/mpeg3″);
            _mimeTypes.Add(".mpa", "audio/mpeg");
            _mimeTypes.Add(".mpc", "application/x-project");
            _mimeTypes.Add(".mpe", "video/mpeg");
            _mimeTypes.Add(".mpeg", "video/mpeg");
            _mimeTypes.Add(".mpg", "video/mpeg");
            _mimeTypes.Add(".mpga", "audio/mpeg");
            _mimeTypes.Add(".mpp", "application/vnd.ms-project");
            _mimeTypes.Add(".mpt", "application/x-project");
            _mimeTypes.Add(".mpv", "application/x-project");
            _mimeTypes.Add(".mpx", "application/x-project");
            _mimeTypes.Add(".mrc", "application/marc");
            _mimeTypes.Add(".ms", "application/x-troff-ms");
            _mimeTypes.Add(".mv", "video/x-sgi-movie");
            _mimeTypes.Add(".my", "audio/make");
            _mimeTypes.Add(".mzz", "application/x-vnd.AudioExplosion.mzz");
            _mimeTypes.Add(".nap", "image/naplps");
            _mimeTypes.Add(".naplps", "image/naplps");
            _mimeTypes.Add(".nc", "application/x-netcdf");
            _mimeTypes.Add(".ncm", "application/vnd.nokia.configuration-message");
            _mimeTypes.Add(".nif", "image/x-niff");
            _mimeTypes.Add(".niff", "image/x-niff");
            _mimeTypes.Add(".nix", "application/x-mix-transfer");
            _mimeTypes.Add(".nsc", "application/x-conference");
            _mimeTypes.Add(".nvd", "application/x-navidoc");
            _mimeTypes.Add(".oda", "application/oda");
            _mimeTypes.Add(".omc", "application/x-omc");
            _mimeTypes.Add(".omcd", "application/x-omcdatamaker");
            _mimeTypes.Add(".omcr", "application/x-omcregerator");
            _mimeTypes.Add(".p", "text/x-pascal");
            _mimeTypes.Add(".p10″, "application/pkcs10″);
            _mimeTypes.Add(".p12″, "application/pkcs-12″);
            _mimeTypes.Add(".p7a", "application/x-pkcs7-signature");
            _mimeTypes.Add(".p7c", "application/pkcs7-mime");
            _mimeTypes.Add(".p7m", "application/pkcs7-mime");
            _mimeTypes.Add(".p7r", "application/x-pkcs7-certreqresp");
            _mimeTypes.Add(".p7s", "application/pkcs7-signature");
            _mimeTypes.Add(".part", "application/pro_eng");
            _mimeTypes.Add(".pas", "text/pascal");
            _mimeTypes.Add(".pbm", "image/x-portable-bitmap");
            _mimeTypes.Add(".pcl", "application/x-pcl");
            _mimeTypes.Add(".pct", "image/x-pict");
            _mimeTypes.Add(".pcx", "image/x-pcx");
            _mimeTypes.Add(".pdb", "chemical/x-pdb");
            _mimeTypes.Add(".pdf", "application/pdf");
            _mimeTypes.Add(".pfunk", "audio/make");
            _mimeTypes.Add(".pgm", "image/x-portable-graymap");
            _mimeTypes.Add(".pic", "image/pict");
            _mimeTypes.Add(".pict", "image/pict");
            _mimeTypes.Add(".pkg", "application/x-newton-compatible-pkg");
            _mimeTypes.Add(".pko", "application/vnd.ms-pki.pko");
            _mimeTypes.Add(".pl", "text/plain");
            _mimeTypes.Add(".plx", "application/x-PiXCLscript");
            _mimeTypes.Add(".pm", "image/x-xpixmap");
            _mimeTypes.Add(".pm4″, "application/x-pagemaker");
            _mimeTypes.Add(".pm5″, "application/x-pagemaker");
            _mimeTypes.Add(".png", "image/png");
            _mimeTypes.Add(".pnm", "application/x-portable-anymap");
            _mimeTypes.Add(".pot", "application/mspowerpoint");
            _mimeTypes.Add(".pov", "model/x-pov");
            _mimeTypes.Add(".ppa", "application/vnd.ms-powerpoint");
            _mimeTypes.Add(".ppm", "image/x-portable-pixmap");
            _mimeTypes.Add(".pps", "application/mspowerpoint");
            _mimeTypes.Add(".ppt", "application/mspowerpoint");
            _mimeTypes.Add(".ppz", "application/mspowerpoint");
            _mimeTypes.Add(".pre", "application/x-freelance");
            _mimeTypes.Add(".prt", "application/pro_eng");
            _mimeTypes.Add(".ps", "application/postscript");
            _mimeTypes.Add(".pvu", "paleovu/x-pv");
            _mimeTypes.Add(".pwz", "application/vnd.ms-powerpoint");
            _mimeTypes.Add(".py", "text/x-script.phyton");
            _mimeTypes.Add(".pyc", "applicaiton/x-bytecode.python");
            _mimeTypes.Add(".qcp", "audio/vnd.qcelp");
            _mimeTypes.Add(".qd3″, "x-world/x-3dmf");
            _mimeTypes.Add(".qd3d", "x-world/x-3dmf");
            _mimeTypes.Add(".qif", "image/x-quicktime");
            _mimeTypes.Add(".qt", "video/quicktime");
            _mimeTypes.Add(".qtc", "video/x-qtc");
            _mimeTypes.Add(".qti", "image/x-quicktime");
            _mimeTypes.Add(".qtif", "image/x-quicktime");
            _mimeTypes.Add(".ra", "audio/x-pn-realaudio");
            _mimeTypes.Add(".ram", "audio/x-pn-realaudio");
            _mimeTypes.Add(".ras", "application/x-cmu-raster");
            _mimeTypes.Add(".rast", "image/cmu-raster");
            _mimeTypes.Add(".rexx", "text/x-script.rexx");
            _mimeTypes.Add(".rf", "image/vnd.rn-realflash");
            _mimeTypes.Add(".rgb", "image/x-rgb");
            _mimeTypes.Add(".rm", "application/vnd.rn-realmedia");
            _mimeTypes.Add(".rmi", "audio/mid");
            _mimeTypes.Add(".rmm", "audio/x-pn-realaudio");
            _mimeTypes.Add(".rmp", "audio/x-pn-realaudio");
            _mimeTypes.Add(".rng", "application/ringing-tones");
            _mimeTypes.Add(".rnx", "application/vnd.rn-realplayer");
            _mimeTypes.Add(".roff", "application/x-troff");
            _mimeTypes.Add(".rp", "image/vnd.rn-realpix");
            _mimeTypes.Add(".rpm", "audio/x-pn-realaudio-plugin");
            _mimeTypes.Add(".rss", "text/xml");
            _mimeTypes.Add(".rt", "text/richtext");
            _mimeTypes.Add(".rtf", "text/richtext");
            _mimeTypes.Add(".rtx", "text/richtext");
            _mimeTypes.Add(".rv", "video/vnd.rn-realvideo");
            _mimeTypes.Add(".s", "text/x-asm");
            _mimeTypes.Add(".s3m", "audio/s3m");
            _mimeTypes.Add(".sbk", "application/x-tbook");
            _mimeTypes.Add(".scm", "application/x-lotusscreencam");
            _mimeTypes.Add(".sdml", "text/plain");
            _mimeTypes.Add(".sdp", "application/sdp");
            _mimeTypes.Add(".sdr", "application/sounder");
            _mimeTypes.Add(".sea", "application/sea");
            _mimeTypes.Add(".set", "application/set");
            _mimeTypes.Add(".sgm", "text/sgml");
            _mimeTypes.Add(".sgml", "text/sgml");
            _mimeTypes.Add(".sh", "text/x-script.sh");
            _mimeTypes.Add(".shar", "application/x-bsh");
            _mimeTypes.Add(".shtml", "text/html");
            _mimeTypes.Add(".sid", "audio/x-psid");
            _mimeTypes.Add(".sit", "application/x-sit");
            _mimeTypes.Add(".skd", "application/x-koan");
            _mimeTypes.Add(".skm", "application/x-koan");
            _mimeTypes.Add(".skp", "application/x-koan");
            _mimeTypes.Add(".skt", "application/x-koan");
            _mimeTypes.Add(".sl", "application/x-seelogo");
            _mimeTypes.Add(".smi", "application/smil");
            _mimeTypes.Add(".smil", "application/smil");
            _mimeTypes.Add(".snd", "audio/basic");
            _mimeTypes.Add(".sol", "application/solids");
            _mimeTypes.Add(".spc", "application/x-pkcs7-certificates");
            _mimeTypes.Add(".spl", "application/futuresplash");
            _mimeTypes.Add(".spr", "application/x-sprite");
            _mimeTypes.Add(".sprite", "application/x-sprite");
            _mimeTypes.Add(".src", "application/x-wais-source");
            _mimeTypes.Add(".ssi", "text/x-server-parsed-html");
            _mimeTypes.Add(".ssm", "application/streamingmedia");
            _mimeTypes.Add(".sst", "application/vnd.ms-pki.certstore");
            _mimeTypes.Add(".step", "application/step");
            _mimeTypes.Add(".stl", "application/sla");
            _mimeTypes.Add(".stp", "application/step");
            _mimeTypes.Add(".sv4cpio", "application/x-sv4cpio");
            _mimeTypes.Add(".sv4crc", "application/x-sv4crc");
            _mimeTypes.Add(".svf", "image/x-dwg");
            _mimeTypes.Add(".svr", "application/x-world");
            _mimeTypes.Add(".swf", "application/x-shockwave-flash");
            _mimeTypes.Add(".t", "application/x-troff");
            _mimeTypes.Add(".talk", "text/x-speech");
            _mimeTypes.Add(".tar", "application/x-tar");
            _mimeTypes.Add(".tbk", "application/toolbook");
            _mimeTypes.Add(".tcl", "text/x-script.tcl");
            _mimeTypes.Add(".tcsh", "text/x-script.tcsh");
            _mimeTypes.Add(".tex", "application/x-tex");
            _mimeTypes.Add(".texi", "application/x-texinfo");
            _mimeTypes.Add(".texinfo", "application/x-texinfo");
            _mimeTypes.Add(".text", "text/plain");
            _mimeTypes.Add(".tgz", "application/x-compressed");
            _mimeTypes.Add(".tif", "image/tiff");
            _mimeTypes.Add(".tiff", "image/tiff");
            _mimeTypes.Add(".tr", "application/x-troff");
            _mimeTypes.Add(".tsi", "audio/tsp-audio");
            _mimeTypes.Add(".tsp", "audio/tsplayer");
            _mimeTypes.Add(".tsv", "text/tab-separated-values");
            _mimeTypes.Add(".turbot", "image/florian");
            _mimeTypes.Add(".txt", "text/plain");
            _mimeTypes.Add(".uil", "text/x-uil");
            _mimeTypes.Add(".uni", "text/uri-list");
            _mimeTypes.Add(".unis", "text/uri-list");
            _mimeTypes.Add(".unv", "application/i-deas");
            _mimeTypes.Add(".uri", "text/uri-list");
            _mimeTypes.Add(".uris", "text/uri-list");
            _mimeTypes.Add(".ustar", "multipart/x-ustar");
            _mimeTypes.Add(".uu", "text/x-uuencode");
            _mimeTypes.Add(".uue", "text/x-uuencode");
            _mimeTypes.Add(".vcd", "application/x-cdlink");
            _mimeTypes.Add(".vcs", "text/x-vCalendar");
            _mimeTypes.Add(".vda", "application/vda");
            _mimeTypes.Add(".vdo", "video/vdo");
            _mimeTypes.Add(".vew", "application/groupwise");
            _mimeTypes.Add(".viv", "video/vivo");
            _mimeTypes.Add(".vivo", "video/vivo");
            _mimeTypes.Add(".vmd", "application/vocaltec-media-desc");
            _mimeTypes.Add(".vmf", "application/vocaltec-media-file");
            _mimeTypes.Add(".voc", "audio/voc");
            _mimeTypes.Add(".vos", "video/vosaic");
            _mimeTypes.Add(".vox", "audio/voxware");
            _mimeTypes.Add(".vqe", "audio/x-twinvq-plugin");
            _mimeTypes.Add(".vqf", "audio/x-twinvq");
            _mimeTypes.Add(".vql", "audio/x-twinvq-plugin");
            _mimeTypes.Add(".vrml", "application/x-vrml");
            _mimeTypes.Add(".vrt", "x-world/x-vrt");
            _mimeTypes.Add(".vsd", "application/x-visio");
            _mimeTypes.Add(".vst", "application/x-visio");
            _mimeTypes.Add(".vsw", "application/x-visio");
            _mimeTypes.Add(".w60″, "application/wordperfect6.0);
            _mimeTypes.Add(".w61″, "application/wordperfect6.1);
            _mimeTypes.Add(".w6w", "application/msword");
            _mimeTypes.Add(".wav", "audio/wav");
            _mimeTypes.Add(".wb1″, "application/x-qpro");
            _mimeTypes.Add(".wbmp", "image/vnd.wap.wbmp");
            _mimeTypes.Add(".web", "application/vnd.xara");
            _mimeTypes.Add(".wiz", "application/msword");
            _mimeTypes.Add(".wk1″, "application/x-123″);
            _mimeTypes.Add(".wmf", "windows/metafile");
            _mimeTypes.Add(".wml", "text/vnd.wap.wml");
            _mimeTypes.Add(".wmlc", "application/vnd.wap.wmlc");
            _mimeTypes.Add(".wmls", "text/vnd.wap.wmlscript");
            _mimeTypes.Add(".wmlsc", "application/vnd.wap.wmlscriptc");
            _mimeTypes.Add(".word", "application/msword");
            _mimeTypes.Add(".wp", "application/wordperfect");
            _mimeTypes.Add(".wp5″, "application/wordperfect");
            _mimeTypes.Add(".wp6″, "application/wordperfect");
            _mimeTypes.Add(".wpd", "application/wordperfect");
            _mimeTypes.Add(".wq1″, "application/x-lotus");
            _mimeTypes.Add(".wri", "application/mswrite");
            _mimeTypes.Add(".wrl", "application/x-world");
            _mimeTypes.Add(".wrz", "model/vrml");
            _mimeTypes.Add(".wsc", "text/scriplet");
            _mimeTypes.Add(".wsrc", "application/x-wais-source");
            _mimeTypes.Add(".wtk", "application/x-wintalk");
            _mimeTypes.Add(".xbm", "image/x-xbitmap");
            _mimeTypes.Add(".xdr", "video/x-amt-demorun");
            _mimeTypes.Add(".xgz", "xgl/drawing");
            _mimeTypes.Add(".xif", "image/vnd.xiff");
            _mimeTypes.Add(".xl", "application/excel");
            _mimeTypes.Add(".xla", "application/excel");
            _mimeTypes.Add(".xlb", "application/excel");
            _mimeTypes.Add(".xlc", "application/excel");
            _mimeTypes.Add(".xld", "application/excel");
            _mimeTypes.Add(".xlk", "application/excel");
            _mimeTypes.Add(".xll", "application/excel");
            _mimeTypes.Add(".xlm", "application/excel");
            _mimeTypes.Add(".xls", "application/excel");
            _mimeTypes.Add(".xlt", "application/excel");
            _mimeTypes.Add(".xlv", "application/excel");
            _mimeTypes.Add(".xlw", "application/excel");
            _mimeTypes.Add(".xm", "audio/xm");
            _mimeTypes.Add(".xml", "text/xml");
            _mimeTypes.Add(".xmz", "xgl/movie");
            _mimeTypes.Add(".xpix", "application/x-vnd.ls-xpix");
            _mimeTypes.Add(".xpm", "image/xpm");
            _mimeTypes.Add(".x-png", "image/png");
            _mimeTypes.Add(".xsr", "video/x-amt-showrun");
            _mimeTypes.Add(".xwd", "image/x-xwd");
            _mimeTypes.Add(".xyz", "chemical/x-pdb");
            _mimeTypes.Add(".z", "application/x-compressed");
            _mimeTypes.Add(".zip", "application/zip");
            _mimeTypes.Add(".zsh", "text/x-script.zsh");
        }   /// <summary>
        /// Gets the MIME type of and filename.
        /// </summary>
        /// <param name="fileName">Name of the file.</param>
        /// <returns>The MIME type of the file, based on the file extension.</returns>
        public static string GetMimeType(string fileName)
        {
            // Get the extension from the filename and
            // get the MIME type from the hashtable.
            string extension = Path.GetExtension(fileName);
            string result = _mimeTypes[extension] as string;   if (result == null)
            {
                // If the MIME type was not found, use this default.
                result = "application/octet-stream";
            }   // Return the found MIME type.
            return result;
        }
    }
}
Trackback(0)
Commentaar (0)Add Comment

Schrijf commentaar
quote
bold
italicize
underline
strike
url
image
quote
quote
smile
wink
laugh
grin
angry
sad
shocked
cool
tongue
kiss
cry
smaller | bigger

busy
 

Quote XNA presentatie

Bedankt voor je schitterende presentatie. Ik heb niets dan positieve geluiden gehoord.

Peter Criellaard
Microsoft

Quote Coding dilemma's

Eindelijk een presentatie waarmee ik ook iets mee kan in de praktijk!

Dennis Schuuring
Max BV

Quote C# fun!

Bedankt voor de presentatie, het was voor mij 1 van de betere momenten van die dag!

Henri Koppen
Arcenus