2009-06-10 2 views
2

У меня есть целая цепочка строк, которые должны представлять типы MIME. Однако некоторые из этих строк имеют неправильные/недопустимые типы MIME. Есть ли способ в .NET Framework получить список допустимых типов MIME?Как узнать, соответствует ли строка действительному типу MIME?

+0

Вы ищете список для справки, или вы ищете какой-то способ для проверки типов MIME в приложении? –

+0

@James: Я ищу способ проверить. –

ответ

1

ЗАКАНЧИВАТЬ this stack overflow post о добавление пользовательских типов mime.

Вы должны быть в состоянии сделать что-то вроде

using (DirectoryEntry mimeMap = new DirectoryEntry("IIS://Localhost/MimeMap")) 
{ 
    PropertyValueCollection propValues = mimeMap.Properties["MimeMap"]; 
    foreach(IISOle.MimeMap mimeType in propValues) 
    //must cast to the interface and not the class 
    { 
     //access mimeType.MimeType to get the mime type string. 
    } 
} 
1

В то время как он не является каноническим в смысле того, что он управляется стандартом, mime.types file delivered with any version of Apache даст вам представление о том, что он (и, следовательно, большая часть сети) считает допустимыми MIME-типы.

2

У IANA есть список here. Я думаю, что это больше авторитет, чем большинство списков, которые вы можете найти.

0

Следуя из DDaviesBracket, вы можете найти последние mime.types здесь:

http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types

, а затем потреблять список (например, для C#):


string[] linesOfMimeTypes = File.ReadAllLines("mime.types"); 

List<string> mimeTypes = new List<string>(); 
foreach(string line in linesOfMimeTypes) 
{ 
    if(line.length < 1) 
     continue; 
    if(line[0] == '#') 
     continue; 
    // else: 
    mimeTypes.Add(line.Split(new char[] { ' ', '\t' })[0]); 
} 

if(mimeTypes.Contains(oneToTest)) 
{ 
    // hooray! 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^