MIME类型详解

MIME类型详解
MIME类型详解

简介

MIME类型就是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。

MIME的英文全称是"Multipurpose Internet Mail Extensions" 多功能Internet 邮件扩充服务,它是一种多用途网际邮件扩充协议,在1992年最早应用于电子邮件系统,但后来也应用到浏览器。服务器会将它们发送的多媒体数据的类型告诉浏览器,而通知手段就是说明该多媒体数据的MIME类型,从而让浏览器知道接收到的信息哪些是MP3文件,哪些是Shockwave文件等等。服务器将MIME标志符放入传送的数据中来告诉浏览器使用哪种插件读取相关文件。

MIME能够支持非ASCII字符、二进制格式附件等多种格式的邮件消息。这个标准被定义在; RFC 2045,; RFC 2046,; RFC 2047,; RFC 2048,; RFC 2049等RFC中。由RFC 822转变而来的RFC 2822,规定电子邮件标准并不允许在邮件消息中使用7位ASCII字符集以外的字符。正因如此,一些非英语字符消息和二进制文件,图像,声音等非文字消息都不能在电子邮件中传输。MIME规定了用于表示各种各样的数据类型的符号化方法。

浏览器接收到文件后,会进入插件系统进行查找,查找出哪种插件可以识别读取接收到的文件。如果浏览器不清楚调用哪种插件系统,它可能会告诉用户缺少某插件,或者直接选择某现有插件来试图读取接收到的文件,后者可能会导致系统的崩溃。传输的信息中缺少MIME标识可能导致的情况很难估计,因为某些计算机系统可能不会出现什么故障,但某些计算机可能就会因此而崩溃。

检查一个服务器是否正确设置了MIME类型的步骤是:

1. 在Netscape浏览器中打开服务器网页

2. 进入"View"菜单,选择"Page Info"

3. 在弹出的窗口中点击上层框架中的"EMBED"

4. 在下层框架中查看MIME的类型是否为"application/x-director"或"application/x-shockwave-flash",如果是上述信息的话表明服务器已经正确设置了MIME类型;而如果MIME类型列出的是文本内容、八位一组的数据或是其它形式均表明服务器的MIME类型没有设置正确。

如果服务器没有正确标明其发送的数据的类型,服务器管理员应该正确添加相关信息,具体操作方法非常简单快捷。

Microsoft公司应用于Windows系统下的浏览器使用ActiveX控件,而不是Netscape插件,这种浏览器不必象其它浏览器那样依靠MIME的编码。"OBJECT"标签的"CLSID"属性准确地标明了应调用哪种程序来读取接收到的文件,因此浏览器不必象"EMBED"标签那样选择一种读取程序。正因为如此,你往往会在使用带插件的浏览器时遇到MIME问题,而使用ActiveX控件的浏览器则很少出现此类麻烦。

正由于上述工作方式的差别也解释了一种现象,不知你是否发现在使用Netscape浏览器播放WAV文件时,浏览器会调用LiveConnect插件进行播放,而其它浏览器一般都使用通用的QuickTime的播放插件等来进行播放,这是因为Netscape浏览器接收文件需要读取MIME标识符,以便决定调用哪种程序来读取接收的文件,而服务器设置在Netscape浏览器中播放WAV文件应使用

LiveConnect插件,因此Netscape浏览器接收到WAV格式的文件时必然就会调用LiveConnect插件,但由于其它浏览器不使用这种方式,因此它们都使用系统默认的播放WAV格式文件的播放器。当然Flash电影文件并不存在这种问题,因为只有Flash播放器才能够正确读取这种格式的文件。

在把输出结果传送到浏览器上的时候,浏览器必须启动适当的应用程序来处理这个输出文档。这可以通过多种类型MIME(多功能网际邮件扩充协议)来完成。在HTTP中,MIME类型被定义在Content-Type header中。

例如,假设你要传送一个Microsoft Excel文件到客户端。那么这时的MIME 类型就是“application/vnd.ms-excel”。在大多数实际情况中,这个文件然后将传送给Execl来处理(假设我们设定Execl为处理特殊MIME类型的应用程序)。在ASP中,设定MIME类型的方法是通过Response对象的ContentType属性。

多媒体文件格式MIME

最早的HTTP协议中,并没有附加的数据类型信息,所有传送的数据都被客户程序解释为超文本标记语言HTML 文档,而为了支持多媒体数据类型,HTTP

协议中就使用了附加在文档之前的MIME数据类型信息来标识数据类型。

MIME意为多目Internet邮件扩展,它设计的最初目的是为了在发送电子邮件时附加多媒体数据,让邮件客户程序能根据其类型进行处理。然而当它被HTTP 协议支持之后,它的意义就更为显著了。它使得HTTP传输的不仅是普通的文本,而变得丰富多彩。

每个MIME类型由两部分组成,前面是数据的大类别,例如声音audio、图象image等,后面定义具体的种类。

常见的MIME类型

超文本标记语言文本 .html text/html

xml文档 .xml text/xml

XHTML文档 .xhtml application/xhtml+xml

普通文本 .txt text/plain

RTF文本 .rtf application/rtf

PDF文档 .pdf application/pdf

Microsoft Word文件 .word application/msword

PNG图像 .png image/png

GIF图形 .gif image/gif

JPEG图形 .jpeg,.jpg image/jpeg

au声音文件 .au audio/basic

MIDI音乐文件 mid,.midi audio/midi,audio/x-midi

RealAudio音乐文件 .ra, .ram audio/x-pn-realaudio

MPEG文件 .mpg,.mpeg video/mpeg

AVI文件 .avi video/x-msvideo

GZIP文件 .gz application/x-gzip

TAR文件 .tar application/x-tar

任意的二进制数据 application/octet-stream

Internet中有一个专门组织IANA来确认标准的MIME类型,但Internet发展的太快,很多应用程序等不及IANA来确认他们使用的MIME类型为标准类型。因此他们使用在类别中以x-开头的方法标识这个类别还没有成为标准,例如:x-gzip,x-tar等。事实上这些类型运用的很广泛,已经成为了事实标准。只要客户机和服务器共同承认这个MIME类型,即使它是不标准的类型也没有关系,客户程序就能根据MIME类型,采用具体的处理手段来处理数据。而Web服务器和浏览器(包括操作系统)中,缺省都设置了标准的和常见的MIME类型,只有对于不常见的 MIME类型,才需要同时设置服务器和客户浏览器,以进行识别。

由于MIME类型与文档的后缀相关,因此服务器使用文档的后缀来区分不同文件的MIME类型,服务器中必须定义文档后缀和MIME类型之间的对应关系。而客户程序从服务器上接收数据的时候,它只是从服务器接受数据流,并不了解文档的名字,因此服务器必须使用附加信息来告诉客户程序数据的MIME类型。服务器在发送真正的数据之前,就要先发送标志数据的MIME类型的信息,这个信息使用Content-type关键字进行定义,例如对于HTML文档,服务器将首先发送以下两行MIME标识信息,这个标识并不是真正的数据文件的一部分。

Content-type: text/html

注意,第二行为一个空行,这是必须的,使用这个空行的目的是将MIME信息与真正的数据内容分隔开。

MIME利用了一个事实就是,RFC 822在消息体的内容中做了一点限制:唯一的限制就是只能使用简单的ASCII文本。所以,MIME信息由正常的Internet文本邮件组成,文本邮件拥有一些特别的符合RFC 822的信息头和格式化过的信息体(用ASCII 的子集来表示的附件)。这些MIME头给出了一种在邮件中表示附件的特别的方法。

MIME信息的剖析

一个普通的文本邮件的信息包含一个头部分(To: From: Subject: 等等)和一个体部分(Hello Mr.,等等)。在一个符合MIME的信息中,也包含一个信息头并不奇怪,邮件的各个部分叫做MIME段,每段前也缀以一个特别的头。MIME 邮件只是基于RFC 822邮件的一个扩展。然而它有着自己的RFC规范集。

头字段

MIME头根据在邮件包中的位置,大体上分为MIME信息头和MIME段头。(译者:MIME信息头指整个邮件的头,而MIME段头只每个MIME段的头。)MIME信息头有:

MIME-Version:

这个头提供了所用MIME的版本号。这个值习惯上为1.0。

Content-Type:

它定义了数据的类型,以便数据能被适当的处理。有效的类型有:text,image,audio,video, applications,multipart和message。注意任何一个二进制附件都应该被叫做application/octet- stream。这个头的一些用例为:image/jpg, application/mswork,multipart/mixed,这只是很少的一部分。

Content-Transfer-Encoding:

这是所有头中最重要的一个,因为它说明了对数据所执行的编码方式,客户/MUA 将用它对附件进行解码。对于每个附件,可以使用7bit,8bit,binary ,quoted-printable,base64和custom中的一种编码方式。7bit 编码是用在US ASCII字符集上的常用的一种编码方式,也就是,保持它的原样。

8bit和binary编码一般不用。对人类可读的标准文本,如果传输要经过对格式有影响的网关时对其进行保护,可以使用quoted printable 。Base64是一种通用方法,在需要决定使用哪一种编码方法时,它提供了一个不用费脑子的选择;它通常用在二进制,非文本数据上。注意,任何非7bit 数据必须用一种模式编码,这样它就可以通过Internet邮件网关!

Content-ID:

如果Content-Type是message/external-body或multipart/alternative 时,这个

头就有用了。它超出了本文的范围。

Content-Description:

这是一个可选的头。它是任何信息段内容的自由文本描述。描述必须使用us-ascii码。

Content-Disposition:

一个试验性的头,它用于给客户程序/MUA提供提示,来决定是否在行内显示附件或作为单独的附件。

MIME段头(出现在实际的MIME附件部分的头),除了MIME-Version头,可以拥有以上任何头字段。如果一个MIME头是信息块的一部分,它将作用于整个信息体。例如,如果Content-Transfer-Encoding显示在信息(指整个信息)头中,它应用于整个信息体,但是如果它显示在一个MIME段里,它"只能"用于那个段中.

注意:其可以对自动对收到的邮件进行解密

MIME类型大全

格式前面为后辍名,后面为对应的MIME型(例如:rar

application/x-rar-compressed 表示.RAR对应的是

application/x-rar-compressed )

application/vnd.lotus-1-2-3

3gp video/3gpp

aab application/x-authoware-bin

aam application/x-authoware-map

aas application/x-authoware-seg

ai application/postscript

aif audio/x-aiff

aifc audio/x-aiff

aiff audio/x-aiff

als audio/X-Alpha5

amc application/x-mpeg

ani application/octet-stream

asc text/plain

asd application/astound

asf video/x-ms-asf

asn application/astound

asp application/x-asap

asx video/x-ms-asf

au audio/basic

avb application/octet-stream avi video/x-msvideo

awb audio/amr-wb

bcpio application/x-bcpio

bin application/octet-stream bld application/bld

bld2 application/bld2

bmp application/x-MS-bmp

bpk application/octet-stream bz2 application/x-bzip2

cal image/x-cals

ccn application/x-cnc

cco application/x-cocoa

cdf application/x-netcdf

cgi magnus-internal/cgi

chat application/x-chat

class application/octet-stream clp application/x-msclip

cmx application/x-cmx

co application/x-cult3d-object cod image/cis-cod

cpio application/x-cpio

cpt application/mac-compactpro crd application/x-mscardfile csh application/x-csh

csm chemical/x-csml

csml chemical/x-csml

css text/css

cur application/octet-stream dcm x-lml/x-evm

dcr application/x-director

dcx image/x-dcx

dhtml text/html

dir application/x-director

dll application/octet-stream dmg application/octet-stream dms application/octet-stream doc application/msword

dot application/x-dot

dvi application/x-dvi

dwf drawing/x-dwf

dxf application/x-autocad

dxr application/x-director

ebk application/x-expandedbook emb chemical/x-embl-dl-nucleotide embl chemical/x-embl-dl-nucleotide eps application/postscript

eri image/x-eri

es audio/echospeech

esl audio/echospeech

etc application/x-earthtime

etx text/x-setext

evm x-lml/x-evm

evy application/x-envoy

exe application/octet-stream

fh4 image/x-freehand

fh5 image/x-freehand

fhc image/x-freehand

fif image/fif

fm application/x-maker

fpx image/x-fpx

fvi video/isivideo

gau chemical/x-gaussian-input

gca application/x-gca-compressed gdb x-lml/x-gdb

gif image/gif

gps application/x-gps

gtar application/x-gtar

gz application/x-gzip

hdf application/x-hdf

hdm text/x-hdml

hdml text/x-hdml

hlp application/winhlp

hqx application/mac-binhex40

htm text/html

html text/html

hts text/html

ice x-conference/x-cooltalk

ico application/octet-stream

ief image/ief

ifm image/gif

ifs image/ifs

imy audio/melody

ins application/x-NET-Install

ipx application/x-ipix

it audio/x-mod

itz audio/x-mod

ivr i-world/i-vrml

j2k image/j2k

jad text/vnd.sun.j2me.app-descriptor jam application/x-jam

jar application/java-archive

jnlp application/x-java-jnlp-file jpe image/jpeg

jpeg image/jpeg

jpg image/jpeg

jpz image/jpeg

js application/x-javascript

jwc application/jwc

kjx application/x-kjx

lak x-lml/x-lak

latex application/x-latex

lcc application/fastman

lcl application/x-digitalloca

lcr application/x-digitalloca

lgh application/lgh

lha application/octet-stream

lml x-lml/x-lml

lmlpack x-lml/x-lmlpack

lsf video/x-ms-asf

lsx video/x-ms-asf

lzh application/x-lzh

m13 application/x-msmediaview

m14 application/x-msmediaview

m15 audio/x-mod

m3u audio/x-mpegurl

m3url audio/x-mpegurl

ma1 audio/ma1

ma2 audio/ma2

ma3 audio/ma3

ma5 audio/ma5

man application/x-troff-man

map magnus-internal/imagemap

mbd application/mbedlet

mct application/x-mascot

mdb application/x-msaccess

mdz audio/x-mod

mel text/x-vmel

mi application/x-mif

mid audio/midi

midi audio/midi

mif application/x-mif

mil image/x-cals

mio audio/x-mio

mmf application/x-skt-lbs

mng video/x-mng

mny application/x-msmoney

moc application/x-mocha

mocha application/x-mocha

mod audio/x-mod

mof application/x-yumekara

mol chemical/x-mdl-molfile

mop chemical/x-mopac-input

mov video/quicktime

movie video/x-sgi-movie

mp2 audio/x-mpeg

mp3 audio/x-mpeg

mp4 video/mp4

mpc application/vnd.mpohun.certificate mpe video/mpeg

mpeg video/mpeg

mpg video/mpeg

mpg4 video/mp4

mpga audio/mpeg

mpn application/vnd.mophun.application mpp application/vnd.ms-project

mps application/x-mapserver

mrl text/x-mrml

mrm application/x-mrm

ms application/x-troff-ms

mts application/metastream

mtx application/metastream

mtz application/metastream

mzv application/metastream

nar application/zip

nbmp image/nbmp

nc application/x-netcdf

ndb x-lml/x-ndb

ndwn application/ndwn

nif application/x-nif

nokia-op-logo image/vnd.nok-oplogo-color npx application/x-netfpx

nsnd audio/nsnd

nva application/x-neva1

oda application/oda

oom application/x-AtlasMate-Plugin

pac audio/x-pac

pae audio/x-epac

pan application/x-pan

pbm image/x-portable-bitmap

pcx image/x-pcx

pda image/x-pda

pdb chemical/x-pdb

pdf application/pdf

pfr application/font-tdpfr

pgm image/x-portable-graymap

pict image/x-pict

pm application/x-perl

pmd application/x-pmd

png image/png

pnm image/x-portable-anymap

pnz image/png

pot application/vnd.ms-powerpoint

ppm image/x-portable-pixmap

pps application/vnd.ms-powerpoint

ppt application/vnd.ms-powerpoint

pqf application/x-cprplayer

pqi application/cprplayer

prc application/x-prc

proxy application/x-ns-proxy-autoconfig ps application/postscript

ptlk application/listenup

pub application/x-mspublisher

pvx video/x-pv-pvx

qcp audio/vnd.qcelp

qt video/quicktime

qti image/x-quicktime

qtif image/x-quicktime

r3t text/vnd.rn-realtext3d

ra audio/x-pn-realaudio

ram audio/x-pn-realaudio

rar application/x-rar-compressed

ras image/x-cmu-raster

rf image/vnd.rn-realflash

rgb image/x-rgb

rlf application/x-richlink

rm audio/x-pn-realaudio

rmf audio/x-rmf

rmm audio/x-pn-realaudio

rmvb audio/x-pn-realaudio

rnx application/vnd.rn-realplayer roff application/x-troff

rp image/vnd.rn-realpix

rpm audio/x-pn-realaudio-plugin

rt text/vnd.rn-realtext

rte x-lml/x-gps

rtf application/rtf

rtg application/metastream

rtx text/richtext

rv video/vnd.rn-realvideo

rwc application/x-rogerwilco

s3m audio/x-mod

s3z audio/x-mod

sca application/x-supercard

scd application/x-msschedule

sdf application/e-score

sea application/x-stuffit

sgm text/x-sgml

sgml text/x-sgml

sh application/x-sh

shar application/x-shar

shtml magnus-internal/parsed-html shw application/presentations

si6 image/si6

si7 image/vnd.stiwap.sis

si9 image/vnd.lgtwap.sis

sis application/vnd.symbian.install sit application/x-stuffit

skd application/x-Koan

skm application/x-Koan

skp application/x-Koan

skt application/x-Koan

slc application/x-salsa

smd audio/x-smd

smi application/smil

smil application/smil

smz audio/x-smd

snd audio/basic

spc text/x-speech

spl application/futuresplash

spr application/x-sprite

sprite application/x-sprite

spt application/x-spt

src application/x-wais-source

stk application/hyperstudio

stm audio/x-mod

sv4cpio application/x-sv4cpio

sv4crc application/x-sv4crc

svf image/vnd

svg image/svg-xml

svh image/svh

svr x-world/x-svr

swf application/x-shockwave-flash swfl application/x-shockwave-flash t application/x-troff

tad application/octet-stream

talk text/x-speech

tar application/x-tar

taz application/x-tar

tbp application/x-timbuktu

tbt application/x-timbuktu

tcl application/x-tcl

tex application/x-tex

texi application/x-texinfo

texinfo application/x-texinfo

tgz application/x-tar

thm application/vnd.eri.thm

tif image/tiff

tiff image/tiff

tki application/x-tkined

tkined application/x-tkined

toc application/toc

toy image/toy

tr application/x-troff

trk x-lml/x-gps

trm application/x-msterminal

tsi audio/tsplayer

tsp application/dsptype

tsv text/tab-separated-values

tsv text/tab-separated-values

ttf application/octet-stream

ttz application/t-time

txt text/plain

ult audio/x-mod

ustar application/x-ustar

uu application/x-uuencode

uue application/x-uuencode

vcd application/x-cdlink

vcf text/x-vcard

vdo video/vdo

vib audio/vib

viv video/vivo

vivo video/vivo

vmd application/vocaltec-media-desc vmf application/vocaltec-media-file vmi application/x-dreamcast-vms-info vms application/x-dreamcast-vms

vox audio/voxware

vqe audio/x-twinvq-plugin

vqf audio/x-twinvq

vql audio/x-twinvq

vre x-world/x-vream

vrml x-world/x-vrml

vrt x-world/x-vrt

vrw x-world/x-vream

vts workbook/formulaone

wav audio/x-wav

wax audio/x-ms-wax

wbmp image/vnd.wap.wbmp

web application/vnd.xara

wi image/wavelet

wis application/x-InstallShield

wm video/x-ms-wm

wma audio/x-ms-wma

wmd application/x-ms-wmd

wmf application/x-msmetafile

wml text/vnd.wap.wml

wmlc application/vnd.wap.wmlc

wmls text/vnd.wap.wmlscript

wmlsc application/vnd.wap.wmlscriptc wmlscript text/vnd.wap.wmlscript wmv video/x-ms-wmv

wmx video/x-ms-wmx

wmz application/x-ms-wmz

wpng image/x-up-wpng

wpt x-lml/x-gps

wri application/x-mswrite

wrl x-world/x-vrml

wrz x-world/x-vrml

ws text/vnd.wap.wmlscript

wsc application/vnd.wap.wmlscriptc

wv video/wavelet

wvx video/x-ms-wvx

wxl application/x-wxl

x-gzip application/x-gzip

xar application/vnd.xara

xbm image/x-xbitmap

xdm application/x-xdma

xdma application/x-xdma

xdw application/vnd.fujixerox.docuworks xht application/xhtml+xml

xhtm application/xhtml+xml

xhtml application/xhtml+xml

xla application/vnd.ms-excel

xlc application/vnd.ms-excel

xll application/x-excel

xlm application/vnd.ms-excel

xls application/vnd.ms-excel

xlt application/vnd.ms-excel

xlw application/vnd.ms-excel

xm audio/x-mod

xml text/xml

xmz audio/x-mod

xpi application/x-xpinstall

xpm image/x-xpixmap

xsit text/xml

xsl text/xml

xul text/xul

xwd image/x-xwindowdump

xyz chemical/x-pdb

yz1 application/x-yz1

z application/x-compress

zac application/x-zaurus-zac

zip application/zip

考研计算机统考大纲详解

考研计算机统考大纲 一、数据结构 【考查目标】 1.掌握数据结构的基本概念、基本原理和基本方法。 2.掌握数据的逻辑结构、存储结构及基本操作的实现,能够对算法进行基本的时间复杂度与空间复杂度的分析。 3.能够运用数据结构基本原理和方法进行问题的分析与求解,具备采用C或C++语言设计与实现算法的能力。 一、线性表 (一)线性表的定义和基本操作 (二)线性表的实现 1.顺序存储 2.链式存储 3.线性表的应用 二、栈、队列和数组 (一)栈和队列的基本概念 (二)栈和队列的顺序存储结构 (三)栈和队列的链式存储结构 (四)栈和队列的应用 (五)特殊矩阵的压缩存储 三、树与二叉树 (一)树的概念 (二)二叉树 1.二叉树的定义及其主要特征 2.二叉树的顺序存储结构和链式存储结构 3.二叉树的遍历 4.线索二叉树的基本概念和构造 (三)树、森林 1.树的存储结构 2.森林与二叉树的转换 3.树和森林的遍历 (四)树与二叉树的应用 1.二叉排序树 2.平衡二叉树 3.哈夫曼(Huffman)树和哈夫曼编码 四、图 (一)图的基本概念 (二)图的存储及基本操作 1.邻接矩阵法 2.邻接表法 3.邻接多重表、十字链表

(三)图的遍历 1.深度优先搜索 2.广度优先搜索 (四)图的基本应用 1.最小(代价)生成树 2.最短路径 3.拓扑排序 4.关键路径 五、查找 (一)查找的基本概念 (二)顺序查找法 (三)分块查找法 (四)折半查找法 (五)B树及其基本操作、B+树的基本概念 (六)散列(Hash)表 (七)字符串模式匹配 (八)查找算法的分析及应用 六、排序 (一)排序的基本概念 (二)插入排序 1.直接插入排序 2.折半插入排序 (三)气泡排序(bubblesort) (四)简单选择排序 (五)希尔排序(shellsort) (六)快速排序 (七)堆排序 (八)二路归并排序(mergesort) (九)基数排序 (十)外部排序 (十一)各种内部排序算法的比较 (十二)排序算法的应用 二、计算机组成原理 【考查目标】 1.理解单处理器计算机系统中各部件的内部工作原理、组成结构以及相互连接方式,具有完整的计算机系统的整机概念。 2.理解计算机系统层次化结构概念,熟悉硬件与软件之间的界面,掌握指令集体系结构的基本知识和基本实现方法。 3.能够运用计算机组成的基本原理和基本方法,对有关计算机硬件系统中的理论和实际问题进行计算、分析,并能对一些基本部件进行简单设计;并能对高级程序设计语言(如C语言)中的相关问题进行分析。 一、计算机系统概述 (一)计算机发展历程

jQuery Ajax 应用实例解析大全

jQuery Ajax应用解析 jQuery确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯。 我们先来看一些简单的方法,这些方法都是对jQuery.ajax()进行封装以方便我们使用的方法,当然,如果要处理复杂的逻辑,还是需要用到jQuery.ajax()的(这个后面会说到). 1. load( url, [data], [callback] ) :载入远程HTML 文件代码并插入至DOM 中。 url(String) : 请求的HTML页的URL地址。 data(Map) : (可选参数) 发送至服务器的key/value 数据。 callback(Callback) : (可选参数) 请求完成时(不需要是success的)的回调函数。 这个方法默认使用GET 方式来传递的,如果[data]参数有传递数据进去,就会自动转换为POST方式的。jQuery 1.2 中,可以指定选择符,来筛选载入的HTML 文档,DOM 中将仅插入筛选出的HTML 代码。语法形如"url #some > selector"。 这个方法可以很方便的动态加载一些HTML文件,例如表单。 示例代码: $(".ajax.load").load("https://www.360docs.net/doc/e03099786.html,/QLeelulu/archive/2008/03/30/1130270.html .post", function (responseText, textStatus, XMLHttpRequest){ this;//在这里this指向的是当前的DOM对象,即$(".ajax.load")[0] //alert(responseText);//请求返回的内容 //alert(textStatus);//请求状态:success,error //alert(XMLHttpRequest);//XMLHttpRequest对象 }); 这里将显示结果。 注:不知道为什么URL写绝对路径在FF下会出错,知道的麻烦告诉下。下面的get()和post()示例使用的是绝对路径,所以在FF下你将会出错并不会看到返回结果。还有get()和post()示例都是跨域调用的,发现传上来后没办法获取结果,所以把运行按钮去掉了。 2. jQuery.get( url, [data], [callback] ):使用GET方式来进行异步请求 参数: url(String) : 发送请求的URL地址. data(Map) : (可选) 要发送给服务器的数据,以Key/value 的键值对形式表示,会做为QueryString附加到请求URL中。 callback(Function) : (可选) 载入成功时回调函数(只有当Response的返回状态是success才是调用该方法)。 这是一个简单的GET 请求功能以取代复杂$.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用$.ajax。示例代码: $.get("./Ajax.aspx", {Action:"get",Name:"lulu"}, function (data, textStatus){

常用函数大全

常用函数大全 mysql_affected_rows
mysql_affected_rows — 取得前一次 MySQL 操作所影响的记录行数 mysql_fetch_array —从结果集中取得一行作为关联数组或数字数组或二者兼 有:
mysql_fetch_array($result, MYSQL_NUM) , MYSQL_NUM 可用 MYSQL_BOTH 或
MYSQL_ASSOC 代替,也可以不写,默认为 MYSQL_BOTH
mysql_fetch_row — 从结果集中取得一行作为枚举数组: mysql_fetch_row($result); mysql_fetch_assoc($result)
mysql_fetch_row()从和指定的结果标识关联的结果集中取得一行数据并作为数组返回。每个结果 的列储存在一个数组的单元中,偏移量从 0 开始。 依次调用 mysql_fetch_row()将返回结果集中的下一行,如果没有更多行则返回 FALSE。 mysql_fetch_assoc — 从结果集中取得一行作为关联数组 :
mysql_fetch_assoc() 和用 mysql_fetch_array() 加上第二个可选参数 MYSQL_ASSOC 完全相同。它 仅仅返回关联数组。这也是 mysql_fetch_array()起初始的工作方式。如果在关联索引之外还需要数字 索引,用 mysql_fetch_array()。 如果结果中的两个或以上的列具有相同字段名,最后一列将优先。要访问同名的其它列,要么用 mysql_fetch_row()来取得数字索引或给该列起个别名。参见 mysql_fetch_array() 例子中有关别名说 明。 有一点很重要必须指出,用 mysql_fetch_assoc()并不明显 比用 mysql_fetch_row()慢,而且还提供了 明显更多的值。
mysql_query()
仅对 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回一个资源标识符,
如果查询执行不正确则返回 FALSE。对于其它类型的 SQL 语句,mysql_query()在执行成功时返回 TRUE,出错时返回 FALSE。非 FALSE 的返回值意味着查询是合法的并能够被服务器执行。这并不说明 任何有关影响到的或返回的行数。 很有可能一条查询执行成功了但并未影响到或并未返回任何行。

网络协议手册——HTTP基础

HTTP协议基础 在日常工作和生活中,HTTP是我们经常用到的协议之一。很多内容需要记录下来以便平时查阅。下面就进入正题: HTTP是什么? HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF (Internet Engineering Task Force)合作的结果,最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版本。其中最著名的就是RFC 2616。RFC 2616定义了今天普遍使用的一个版本——HTTP 1.1。 HTTP在网络模型中的位置

HTTP是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP 的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。 URL介绍 URL(Uniform Resource Locator) 地址用于描述一个网络上的资源, 基本格式如下: schema://host[:port#]/path/.../[?query-string][#anchor] scheme 指定低层使用的协议(例如:http, https, ftp) host HTTP服务器的IP地址或者域名 port# HTTP服务器的默认端口是80,这种情况下端口号可以省略。如果使用了别的端口,必须指明。 path 访问资源的路径 query-string 发送给http服务器的数据 anchor- 锚 Request请求

Sip_响应状态码_对照_详解(新)

Sip 响应状态码对照详解 SIP应答消息状态码 与功能 类型状态码状态说明 临时应答(1XX) 100 Trying 正在处理中 180 Ringing 振铃 181 call being forwarder 呼叫正在前向 182 queue 排队 181* session progress 会话进行 会话成功(2XX) 200 OK 会话成功 重定向(3XX) 300 multiple 多重选择 301 moved permanently 永久移动 302 moved temporaily临时移动 305 use proxy 用户代理 380 alternative service 替代服务 请求失败(4XX) 400 bad request 错误请求 401unauthorized 未授权 402 payment required 付费要求 403 forbidden 禁止 404 not found 未发现 405 method no allowed 方法不允许 406 not acceptable 不可接受 407 proxy authentication required 代理需要认证408 request timeout 请求超时 410 gone 离开 413 request entity too large 请求实体太大 414 request-url too long 请求URL太长 415 unsupported media type 不支持的媒体类型416 unsupported url scheme 不支持的URL计划420 bad extension 不良扩展 421 extension required 需要扩展 423 interval too brief 间隔太短 480 temporarily unavailable 临时失效 481 call/transaction does not exist 呼叫/事务不存在482 loop detected 发现环路 483 too many hops 跳数太多 484 address incomplete 地址不完整 485 ambiguous 不明朗 486 busy here 这里忙 487 request terminated 请求终止 488 not acceptable here 这里请求不可接受 491 request pending 未决请求 493 undecipherable 不可辨识

IIS mime类型大全

我的淘宝店https://www.360docs.net/doc/e03099786.html, application/vnd.lotus-1-2-3 3gp video/3gpp aab application/x-authoware-bin aam application/x-authoware-map aas application/x-authoware-seg ai application/postscript aif audio/x-aiff aifc audio/x-aiff aiff audio/x-aiff als audio/X-Alpha5 amc application/x-mpeg ani application/octet-stream asc text/plain asd application/astound asf video/x-ms-asf asn application/astound asp application/x-asap asx video/x-ms-asf au audio/basic avb application/octet-stream avi video/x-msvideo awb audio/amr-wb bcpio application/x-bcpio bin application/octet-stream bld application/bld bld2 application/bld2 bmp application/x-MS-bmp bpk application/octet-stream bz2 application/x-bzip2 cal image/x-cals ccn application/x-cnc cco application/x-cocoa cdf application/x-netcdf cgi magnus-internal/cgi chat application/x-chat class application/octet-stream clp application/x-msclip cmx application/x-cmx co application/x-cult3d-object cod image/cis-cod cpio application/x-cpio cpt application/mac-compactpro

文件上传后缀名与文件类型对照表

网上有很多php文件上传的类,文件上传处理是php的一个特色(至少手册上是将此作为php 特点来展示的,个人认为php在数组方面的优异功能更有特色),学php的人都知道文件上传怎么做,但很多人在编程中却可能忽视了一些细节问题,那就是文件的类型(MIME)。在表单将文件提交给php做处理之前,浏览器会先解析识别一边是什么类型的文件,之后进入php处理环节,php又会去识别解析此文件的原始类型(并不是说你改成什么后缀就是什么文件)。在这个过程中会有一些浏览器兼容,更准确来说是文件类型解析标识不一致的问题。这样在php处理Post过来的文件类型时就需要根据不同浏览器做更多的判断,最典型的就是IE和火狐下的区别。 php上传图片文件(gif,jpg,bmp,png,psd,ico) php上传压缩文件(rar,7z,zip) php上传可执行文件(exe) php上传视频文件,音乐文件,歌词文件(avi,rmvb,3gp,flv,mp3,wav,krc,lrc) php上传文本文件和文档文件(word->doc,excel->xls,幻灯片->ppt,pdf,chm) php上传数据库文件(access文件,sql文件,con文件,日志文件log, dat文件) php上传网页文件,脚本文件,字体文件(ini,php,html,htm,字体文件:ttf,fon, js ,xml) php上传其他文件(class类文件,dll动态加载库文件) 史上最完全oophper亲测版php文件上传之文件类型对应表,ie,火狐各一份。 ie 火狐 id 后缀名php识别出的文件类型 0 gif image/gif 1 jpg image/pjpeg 2 png image/x-png 3 bmp image/bmp 4 psd application/octet-stream 5 ico image/x-icon 6 rar application/octet-stream 7 zip application/x-zip-compressed 8 7z application/octet-stream

文件扩展名大全1

文件扩展名大全 1.A3L:Authorware 3.x库文件 2.A3M,A4M:Authorware Macintosh未打包文件 3.A3W,A4W,A5W:未打包的Authorware Windows文件 4.A4L:Authorware 4.x库文件 5.A5L:Authorware 5.x库文件 6.ACE:Ace压缩档案格式 7.ACT:Microsoft office助手文件 8.AIF,AIFF:音频互交换文件,Silicon Graphic and Macintosh应用程序的声音格式 9.ANI:Windows系统中的动画光标 10.ARC:LH ARC的压缩档案文件 11.ARJ:Robert Jung ARJ压缩包文件 12.ASD:Microsoft Word的自动保存文件;Microsoft高级流媒体格式 13.ASF:Microsoft高级流媒体格式文件 14.ASM:汇编语言源文件,Pro/E装配文件 15.ASP:动态网页文件;ProComm Plus安装与连接脚本文件;Astound介绍文件 16.AST:Astound多媒体文件;ClarisWorks“助手”文件 17.Axx:ARJ压缩文件的分包序号文件(xx取01-99的数字) 18.BAK:备份文件 19.BAS:BASIC源文件 20.BAT:批处理文件 21.BIN:二进制文件 22.BINHex:苹果的一种编码格式 23.BMP:Windows或OS/2位图文件 24.BOOK:AdobeFrameMaker Book文件 25.BOX:Lotus Notes的邮箱文件 26.BPL:Borlard Delph4打包库 27.BSP:Quake图形文件 28.BUN:CakeWalk声音捆绑文件(一种MIDI程序) 29.C0l:台风波形文件 30.CAB:Microsoft压缩档案文件 31.CAD:Softdek的Drafix CAD文件 32.CAM:Casio照相机格式 33.CAP:压缩音乐文件格式 34.CAS:逗号分开的ASCⅡ文件 https://www.360docs.net/doc/e03099786.html,B:Visual Basic动态按钮配置文件 https://www.360docs.net/doc/e03099786.html,H:Corel图表文件 https://www.360docs.net/doc/e03099786.html,O:CyberChat数据文件 https://www.360docs.net/doc/e03099786.html,T:Macromedia Director Shockwave投影 39.CDA:CD音频轨道 40.CDF:Microsoft频道定义格式文件 41.CDI:Philip的高密盘交互格式

MIME类型大全

MIME类型大全 格式前面为后辍名,后面为对应的MIME型(例如:.rar application/x-rar-compressed 表示.RAR对应的是application/x-rar-compressed) .123 application/vnd.lotus-1-2-3 .3gp video/3gpp .aab application/x-authoware-bin .aam application/x-authoware-map .aas application/x-authoware-seg .ai application/postscript .aif audio/x-aiff .aifc audio/x-aiff .aiff audio/x-aiff .als audio/X-Alpha5 .amc application/x-mpeg .ani application/octet-stream .asc text/plain .asd application/astound .asf video/x-ms-asf .asn application/astound .asp application/x-asap .asx video/x-ms-asf .au audio/basic .avb application/octet-stream .avi video/x-msvideo .awb audio/amr-wb .bcpio application/x-bcpio .bin application/octet-stream .bld application/bld .bld2 application/bld2 .bmp application/x-MS-bmp .bpk application/octet-stream .bz2 application/x-bzip2 .cal image/x-cals .ccn application/x-cnc .cco application/x-cocoa .cdf application/x-netcdf .cgi magnus-internal/cgi .chat application/x-chat .class application/octet-stream .clp application/x-msclip

html所有标签及其作用

html所有标签及其作用 ,表示该文件为HTML文件 ,包含文件的标题,使用的脚本,样式定义等 ---,包含文件的标题,标题出现在浏览器标题栏中 ,的结束标志 ,放置浏览器中显示信息的所有标志和属性,其中内容在浏览器中显示. ,的结束标志 ,的结束标志 其它主要标签,以下所有标志用在中: ,链接标志,"…"为链接的文件地址 ,显示图片标志,"…"为图片的地址
,换行标志

,分段标志 ,采用黑体字 ,采用斜体字


,水平画线
,定义表格,HTML中重要的标志 ,定义表格的行,用在
中 ,定义表格的单元格,用在中 ,字体样式标志 属性: 属性是用来修饰标志的,属性放在开始标志内. 例:属性bgcolor="BLACK"表示背景色为黑色. 引用属性的例子: 表示页面背景色为黑色; 表示表格背景色为黑色. 常用属性: 对齐属性,范围属性: ALIGN=LEFT,左对齐(缺省值),WIDTH=象素值或百分比,对象宽度. ALIGN=CENTER,居中,HEIGHT=象素值或百分比,对象高度. ALIGN=RIGHT,右对齐. 色彩属性: COLOR=#RRGGBB,前景色,参考色彩对照表. BGCOLOR=#RRGGBB,背景色.
表示绝对居中.

扩展名大全_常用文件格式大全(文件扩展名

扩展名大全:常用文件格式大全(文件扩展名的含义) 疯狂代码 https://www.360docs.net/doc/e03099786.html,/ ?:http:/https://www.360docs.net/doc/e03099786.html,/Arithmetic/Article24387.html 不同的文件,有不同的文件格式,区别这些格式常常是文件名的后缀名不同,现统计常用文件后缀名如下,供大家参考和查阅。 A 对象代码库文件 AAM Authorware shocked文件 AAS Authorware shocked包 ABF Adobe二进制屏幕字体 ABK CorelDRAW自动备份文件 ABS 该类文件有时用于指示一个摘要(就像在一篇有关科学方面的文章的一个摘要或概要,取自abstract) ACE Ace压缩档案格式 ACL CorelDRAW 6键盘快捷键文件 ACM Windows系统目录文件 ACP Microsoft office助手预览文件 ACR 美国放射医学大学文件格式 ACT Microsoft office助手文件 ACV OS/2的驱动程序,用于压缩或解压缩音频数据 AD After Dark屏幕保护程序 ADA Ada源文件(非-GNAT) ADB Ada源文件主体(GNAT);HP100LX组织者的约定数据库 ADD OS/2用于引导过程的适配器驱动程序 ADF Amiga磁盘文件 ADI AutoCAD设备无关二进制绘图仪格式 ADM After Dark多模块屏幕保护;Windows NT策略模板 ADP FaxWork用于传真调制解调器的交互安装文件;Astound Dynamite文件 ADR After Dark薠聊槐;ぃ籗mart Address的地址簿 ADS Ada源文件说明书(GNAT) AFM Adobe的字体尺度 AF2,AF3 ABC的FlowChat文件 AI Adobe Illustrator格式图形 AIF,AIFF 音频互交换文件,Silicon Graphic and Macintosh应用程序的声音格式 AIFC 压缩AIF AIM AOL即时信息传送 AIS ACDSee图形序列文件;Velvet Studio设备文件

sip消息类型和消息代码详解

在学习asterisk的时候,经常遇到一些远程服务器传回的代码,这些代码都有很重要的信息,让我们了解到对方的sip是如何响应我们这边的sip消息的,于是网上找到了这些sip消息类型和消息代码,自己收藏,相信很有用的。 sip消息类型和消息格式 SIP是一个基于文本的协议,使用的是UTF-8字符集. SIP消息主要分为两大类: 一类是由客户端发往服务器的请求消息(Request); 一类是由服务器发往客户端的应答消息(Response). 一个基本的SIP消息包括起始行、一个或多个头字段、说明头字段结束的空行和一个可选的消息体。 消息=起始行(包括请求行/状态行;请求行规定了请求的类别,而状态行指出了每个请求的状态,比如是成功还是失败。如果是失败的话还要给出失败的原因或类型。) *头字段 CRLF [消息体] (消息首部给出了关于请求或应答的更多信息一般包括消息的来源、规定的消息接收方,另外还包括一些其他方面的重要信息。消息体通常描述将要建立会议的类型包括所交换媒体的描述,但不具体定义消息体的内容或结构,其结构或内容使用另外一个协议来描述,就是会话描述协议SDP。) 请求消息 请求行=方法 +空格 +请求地址 +SIP版本号 +空行 通过一个请求行作为起始行,请求行包括了方法名、请求的URL、协议版本号、中间用空格分开。 六种请求方法: INVITE 发出呼叫会话请求 ACK INVITE请求被最终请求 BYE 释放一个呼叫会话 CANCEL 取消挂起的呼叫 REGISTER 登记注册用户代理 OPTIONS 查询服务器能力 应答消息 状态行=SIP版本+空格+状态码+空格+相关文本短语+空行 SIP应答消息状态码与功能 类型状态码状态说明 临时应答(1XX) 100 Trying 正在处理中 180 Ringing 振铃 181 call being forwarder 呼叫正在前向 182 queue 排队

content-type文件后缀大全

文件扩展名 Content-Type(Mime-Type) 文件扩展名 Content-Type(Mime-Type) .*(二进制流,不知道下载文件类型)application/octet-stream .tif image/tiff .001 application/x-001 .301 application/x-301 .323 text/h323 .906 application/x-906 .907 drawing/907 .a11 application/x-a11 .acp audio/x-mei-aac .ai application/postscript .aif audio/aiff .aifc audio/aiff .aiff audio/aiff .anv application/x-anv .asa text/asa .asf video/x-ms-asf .asp text/asp .asx video/x-ms-asf .au audio/basic .avi video/avi .awf application/vnd.adobe.workflow .biz text/xml

.c4t application/x-c4t .c90 application/x-c90 .cal application/x-cals .cat application/vnd.ms-pki.seccat .cdf application/x-netcdf .cdr application/x-cdr .cel application/x-cel .cer application/x-x509-ca-cert .cg4 application/x-g4 .cgm application/x-cgm .cit application/x-cit .class java/* .cml text/xml .cmp application/x-cmp .cmx application/x-cmx .cot application/x-cot .crl application/pkix-crl .crt application/x-x509-ca-cert .csi application/x-csi .css text/css .cut application/x-cut .dbf application/x-dbf

web习题

1、下面选项中,用于指定客户端期望服务器返回哪个国家语言的文档的头字段是 A、Accept-Charset B、Accept C、Accept-Encoding D、Accept-Language 2、在一个web应用中有页面index.html,具体代码如下: 请问在IE 浏览器中请求该页面时,浏览器会发出几次请求 A、1次 B、2次 C、3次 D、4次 3、下面选项中,哪个头字段可以实现防盗链 A、Location B、Refresh C、Referer D、If-Modified-Since 4、下面关于http协议中get与post请求的说法中,错误的是 A、get方式传输数据大小有限制 B、post方式传可以传输大数据 C、get方式会将请求信息在地址栏上显示,post不会 D、http协议请求方式只有get和post 5、假设在helloapp应用中有一个HelloServet.java类,它位于com.itheima包中,那么这个类的.class文件的存放路径应该是什么 A、helloapp/HelloServlet.class B、helloapp/WEB-INF/HelloServlet.class C、helloapp/WEB-INF/classes/HelloServlet.class D、helloapp/WEB-INF/classes/com/itheima/HelloServlet.class 6、下面关于配置web默认页面index.html的说法中,正确的是 A、 index.html B、 index.html C、 index.html D、 index.html 7、下面选项中,哪个头字段用于指定服务器返回的部分实体内容的位置信息 A、Content-Range B、Content-Location C、Range D、Content-Length 8、下列选项中,修改Tomcat端口号的文件是 A、conf.xml B、context.xml C、server.xml

MIME TYPE 大全

MIME TYPE 大全 Mime-Typ Dateiendung(en)Bedeutung application/acad *.dwg AutoCAD-Dateien (nach NCSA) application/applefile AppleFile-Dateien application/astound *.asd *.asn Astound-Dateien application/dsptype *.tsp TSP-Dateien application/dxf *.dxf AutoCAD-Dateien (nach CERN) application/futuresplash *.spl Flash Futuresplash-Dateien application/gzip *.gz GNU Zip-Dateien application/listenup *.ptlk Listenup-Dateien application/mac-binhex40 *.hqx Macintosh Bin?r-Dateien application/mbedlet *.mbd Mbedlet-Dateien application/mif *.mif FrameMaker Interchange Format Dateien application/msexcel *.xls *.xla Microsoft Excel Dateien application/mshelp *.hlp *.chm Microsoft Windows Hilfe Dateien application/mspowerpoint *.ppt *.ppz *.pps *.pot Microsoft Powerpoint Dateien application/msword *.doc *.dot Microsoft Word Dateien application/octet-stream *.bin *.exe *.com *.dll *.class Ausführbare Dateien application/oda *.oda Oda-Dateien application/pdf *.pdf Adobe PDF-Dateien application/postscript *.ai *.eps *.ps Adobe Postscript-Dateien application/rtc *.rtc RTC-Dateien application/rtf *.rtf Microsoft RTF-Dateien application/studiom *.smp Studiom-Dateien application/toolbook *.tbk Toolbook-Dateien application/vocaltec-media-desc *.vmd Vocaltec Mediadesc-Dateien application/vocaltec-media-file *.vmf Vocaltec Media-Dateien application/x-bcpio *.bcpio BCPIO-Dateien application/x-compress *.z -Dateien application/x-cpio *.cpio CPIO-Dateien application/x-csh *.csh C-Shellscript-Dateien application/x-director *.dcr *.dir *.dxr -Dateien application/x-dvi *.dvi DVI-Dateien application/x-envoy *.evy Envoy-Dateien application/x-gtar *.gtar GNU tar-Archiv-Dateien application/x-hdf *.hdf HDF-Dateien application/x-httpd-php *.php *.phtml PHP-Dateien application/x-javascript *.js serverseitige JavaScript-Dateien application/x-latex *.latex Latex-Quelldateien application/x-macbinary *.bin Macintosh Bin?rdateien application/x-mif *.mif FrameMaker Interchange Format

jsp概念大全

第一章 JSP 概述 1.1 静态网页和动态网页 静态网页:是指用HTML 标记语言等来编排,页面中的内容固定不变,存盘后一般以*.html 、*.htm 等文件形式存在的网页。 动态网页:是指网页中的关键内容在服务器端动态生成的网页。 区别:一个动态网页会被服务器当作一个程序来执行,网页中静态内容服务器不作任何处理,直接输出给客户端,动态网页部分的代码会被服务器识别并执行;而静态网页则不会被服务器视为程序,网页中的内容不会被服务器运行。 URL 的格式由三部分组成: 第一部分是协议(或称为服务方式), 第二部分是存有该资源的主机IP 地址或域名(包括端口号), 第三部分是资源的具体地址。 1.2 Servlet 与JSP Servlet 称为Java 的服务器端应用小程序,是Sun 的服务器端组件技术之一。Servlet 的基本功能与CGI 类似,属于Web 服务器扩展,是Java 平台下实现动态网页的基本技术,具有占用资源少、效率高、可移植性和安全性强等特点。 Servlet 应用模型如图 JSP 与Servlet 的关系 Servlet 向客户端返回的内容需要用out.print()输出,不便于网页版面的设计和修改。为了解决这个问题,Sun 制订了JSP 技术规范,JSP 网页版面的设计与维护可通过DreamWeaver 等工具软件来实现,比Servlet 要直观和容易。 Servlet 客户端 EJB 组件 JavaBean 组 数据库 JDBC

JSP页面最终会被JSP服务器编译成一个Servlet程序来运行。 1.3上机实验环境的搭建 安装J2SE1.5 安装Tomcat Tomcat5.5的文件夹结构

Android 中文件类型与MIME的匹配表

在Android中通过文件的MIME类型来判断有哪些应用程序可以处理这些文件,并使用其中的某一个应用程序(如果有多个可选的应用程序,则用户必须指定一个)处理之。 实现方法: java代码: 1. 2./** 3.* 根据文件后缀名获得对应的MIME类型。 4.* @param file 5.*/ 6. 7.private String getMIMEType(File file){ 8.String type="*/*"; 9.String fName=file.getName(); 10.//获取后缀名前的分隔符"."在fName中的位置。 11.int dotIndex = https://www.360docs.net/doc/e03099786.html,stIndexOf("."); 12. 13. 14.if(dotIndex < 0){ 15.return type; 16.} 17. 18./* 获取文件的后缀名 */ 19.String end=fName.substring(dotIndex,fName.length()).toLowerCase(); 20.if(end=="")return type; 21.//在MIME和文件类型的匹配表中找到对应的MIME类型。 22.for(int i=0;i< p> 23.if(end.equals(MIME_MapTable[i][0])) 24.type = MIME_MapTable[i][1]; 25.} 26.return type; 27.}

28. 29./** 30.* 打开文件 31.* @param file 32.*/ 33.private void openFile(File file){ 34. 35.//Uri uri = Uri.parse("file://"+file.getAbsolutePath()); 36. 37.Intent intent = new Intent(); 38.intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 39.//设置intent的Action属性 40.intent.setAction(Intent.ACTION_VIEW); 41.//获取文件file的MIME类型 42.String type = getMIMEType(file); 43.//设置intent的data和Type属性。 44.intent.setDataAndType(/*uri*/Uri.fromFile(file), type); 45.//跳转 46.startActivity(intent); 47.} 48. 49. 复制代码 现在就差一个MIME类型和文件类型的匹配表了。 "文件类型——MIME类型"的匹配表: 建立一个MIME类型与文件后缀名的匹配表 java代码: 1. 2.private final String[][] MIME_MapTable={ 3. 4.

相关文档
最新文档