zone117x / MimeMapping

Constants for (almost) all MIME types and file extensions, and method to determine MIME type of a file name.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MimeMapping

Nuget Nuget build codecov

Constants for (almost) all MIME types and method to determine MIME type from a file name. Contains just over 1000 mime types.

The Dictionary is generated from the jshttp/mime-db db.json. Works similar to .NET's System.Web.MimeMapping.GetMimeMapping.

It aggregates data from the following sources:

The library is just a literal C# Dictionary<string, string> with over 1000 entries, and a helper method that can be passed a file path.

Example Usage

string myFile = "myimage.jpg";
string mimeType = MimeMapping.MimeUtility.GetMimeMapping(myFile);
Console.WriteLine(mimeType); // output: image/jpeg

string randomFile = "data.asdf";
string mimeType = MimeMapping.MimeUtility.GetMimeMapping(randomFile);
Console.WriteLine(mimeType); // output: application/octet-stream

string rawExtension = "json";
string mimeType = MimeMapping.MimeUtility.GetMimeMapping(rawExtension);
Console.WriteLine(mimeType); // output: application/json


// List all types..
foreach(var kp in MimeMapping.MimeTypes.TypeMap)
{
  Console.WriteLine($"File extension: {kp.Key}, mime string: {kp.Value}");
}

About

Constants for (almost) all MIME types and file extensions, and method to determine MIME type of a file name.

License:MIT License


Languages

Language:C# 100.0%