ASP.NET 根据后缀获取ContentType类型

       花了几天时间去研究了一下邮件管理系统,在C#下基于一个免费的JMAIL 4.4这个DLL。为什么不选JMail.net 1.1的?JMail.net 1.1发邮件很不错,但是他没有POP3,所以收不了邮件。说说我遇到一个问题,在发附件的时候,关于ContetnType类型之间的选择问题。来做一个测试例子,代码如下:

 

1、在C盘建一个ContentType.txt文件

ez,application/andrew-inset
hqx,application/mac-binhex40
cpt,application/mac-compactpro
doc,application/msword
bin,application/octet-stream
dms,application/octet-stream
lha,application/octet-stream
lzh,application/octet-stream
exe,application/octet-stream
class,application/octet-stream
so,application/octet-stream
dll,application/octet-stream
oda,application/oda
pdf,application/pdf
ai,application/postscript
eps,application/postscript
ps,application/postscript
smi,application/smil
smil,application/smil
mif,application/vnd.mif
xls,application/vnd.ms-excel
ppt,application/vnd.ms-powerpoint
wbxml,application/vnd.wap.wbxml
wmlc,application/vnd.wap.wmlc
wmlsc,application/vnd.wap.wmlscriptc
bcpio,application/x-bcpio
vcd,application/x-cdlink
pgn,application/x-chess-pgn
cpio,application/x-cpio
csh,application/x-csh
dcr,application/x-director
dir,application/x-director
dxr,application/x-director
dvi,application/x-dvi
spl,application/x-futuresplash
gtar,application/x-gtar
hdf,application/x-hdf
js,application/x-javascript
skp,application/x-koan
skd,application/x-koan
skt,application/x-koan
skm,application/x-koan
latex,application/x-latex
nc,application/x-netcdf
cdf,application/x-netcdf
sh,application/x-sh
shar,application/x-shar
swf,application/x-shockwave-flash
sit,application/x-stuffit
sv4cpio,application/x-sv4cpio
sv4crc,application/x-sv4crc
tar,application/x-tar
tcl,application/x-tcl
tex,application/x-tex
texinfo,application/x-texinfo
texi,application/x-texinfo
tr,application/x-troff
roff,application/x-troff
man,application/x-troff-man
me,application/x-troff-me
ms,application/x-troff-ms
ustar,application/x-ustar
src,application/x-wais-source
xhtml,application/xhtml+xml
xht,application/xhtml+xml
zip,application/zip
au,audio/basic
snd,audio/basic
mid,audio/midi
midi,audio/midi
kar,audio/midi
mpga,audio/mpeg
mp2,audio/mpeg
mp3,audio/mpeg
aif,audio/x-aiff
aiff,audio/x-aiff
aifc,audio/x-aiff
m3u,audio/x-mpegurl
ram,audio/x-pn-realaudio
rm,audio/x-pn-realaudio
rpm,audio/x-pn-realaudio-plugin
ra,audio/x-realaudio
wav,audio/x-wav
pdb,chemical/x-pdb
xyz,chemical/x-xyz
bmp,image/bmp
gif,image/gif
ief,image/ief
jpeg,image/jpeg
jpg,image/jpeg
jpe,image/jpeg
png,image/png
tiff,image/tiff
tif,image/tiff
djvu,image/vnd.djvu
djv,image/vnd.djvu
wbmp,image/vnd.wap.wbmp
ras,image/x-cmu-raster
pnm,image/x-portable-anymap
pbm,image/x-portable-bitmap
pgm,image/x-portable-graymap
ppm,image/x-portable-pixmap
rgb,image/x-rgb
xbm,image/x-xbitmap
xpm,image/x-xpixmap
xwd,image/x-xwindowdump
igs,model/iges
iges,model/iges
msh,model/mesh
mesh,model/mesh
silo,model/mesh
wrl,model/vrml
vrml,model/vrml
css,text/css
html,text/html
htm,text/html
asc,text/plain
txt,text/plain
rtx,text/richtext
rtf,text/rtf
sgml,text/sgml
sgm,text/sgml
tsv,text/tab-separated-values
wml,text/vnd.wap.wml
wmls,text/vnd.wap.wmlscript
etx,text/x-setext
xsl,text/xml
xml,text/xml
mpeg,video/mpeg
mpg,video/mpeg
mpe,video/mpeg
qt,video/quicktime
mov,video/quicktime
mxu,video/vnd.mpegurl
avi,video/x-msvideo
movie,video/x-sgi-movie
ice,x-conference/x-cooltalk

 

2、在C#里做的测试,loadDicContentType和getContentType

class Program
{
    static void Main(string[] args)
    {
 
        loadDicContentType();
        Console.WriteLine(getContentTypeValue("class"));
        Console.ReadLine();
    }
 
    static Dictionary<string, string> dicContentType = new Dictionary<string, string>();
    static void loadDicContentType()
    {
        string[] contentTypes = File.ReadAllLines(@"c:\contentType.txt");
        foreach (string contentType in contentTypes)
        {
            string[] types = contentType.Split(',');
            string key = types[0];
            string value = types[1];
            dicContentType.Add(key, value);
        }
    }
 
    static string getContentTypeValue(string key)
    {
        string value = dicContentType[key];
        return value;
    }
}

 

posted @   春天又来了  阅读(1408)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示