delphi XE获取mime-type和文件扩展名对照表
MimeType是你让编写的应用Restful化编程所必须的。delphi支持哪些MimeType,如何知道这些MimeType与文件扩展名的对应关系,以及它们是文本种类、二进制种类还是未定义的。
一、先上代码 :
已附上面源码下载。由于代码引用了跨平台的文件存取,使用源码注意事项:1、在FormCreate中获取你自己写的代码的系统权限;2、并设置你自己的项目路径 https://download.csdn.net/download/pulledup/12364885 :代码以本文为准!
unit MasterDetail;
interface
uses
System.SysUtils, System.Types, System.UITypes,
System.Classes, System.Variants,
System.Rtti, System.Bindings.Outputs,
System.Net.Mime, REST.Types, //:本案ListView1第1项"展示MimeType即ContentType"需要引用的单元
System.IOUtils,
Data.Bind.GenData, Data.Bind.EngExt,
Data.Bind.Components, Data.Bind.ObjectScope,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics,
FMX.Dialogs, FMX.ListView.Types,
Fmx.Bind.GenData, Fmx.Bind.Editors, Fmx.Bind.DBEngExt,
FMX.Objects, FMX.StdCtrls, FMX.ListView,
FMX.ListView.Appearances, FMX.Layouts, FMX.MultiView,FMX.Memo,
Fmx.Bind.Navigator, System.Actions, FMX.ActnList,
FMX.ListView.Adapters.Base, FMX.ScrollBox,
FMX.Controls.Presentation;
type
TMasterDetailForm = class(TForm)
MultiView1: TMultiView;
Layout1: TLayout;
ListView1: TListView;
MasterToolbar: TToolBar;
MasterLabel: TLabel;
DetailToolbar: TToolBar;
DetailLabel: TLabel;
MasterButton: TSpeedButton;
imgContact: TImage;
lblName: TLabel;
lblTitle: TLabel;
PrototypeBindSource1: TPrototypeBindSource;
BindingsList1: TBindingsList;
LinkPropertyToFieldBitmap: TLinkPropertyToField;
LinkPropertyToFieldText: TLinkPropertyToField;
LinkPropertyToFieldText2: TLinkPropertyToField;
Layout2: TLayout;
Layout3: TLayout;
Memo1: TMemo;
LinkControlToField1: TLinkControlToField;
LinkListControlToField1: TLinkListControlToField;
ActionList1: TActionList;
LiveBindingsBindNavigateNext1: TFMXBindNavigateNext;
LiveBindingsBindNavigatePrior1: TFMXBindNavigatePrior;
btnUp: TSpeedButton;
btnDown: TSpeedButton;
procedure ListView1ItemClick(const Sender: TObject; const AItem: TListViewItem);
procedure ListView1UpdateObjects(const Sender: TObject;
const AItem: TListViewItem);
procedure ListView1UpdatingObjects(const Sender: TObject;
const AItem: TListViewItem; var AHandled: Boolean);
procedure LinkControlToField1AssigningValue(Sender: TObject;
AssignValueRec: TBindingAssignValueRec; var Value: TValue;
var Handled: Boolean);
procedure LinkPropertyToFieldTextAssigningValue(Sender: TObject;
AssignValueRec: TBindingAssignValueRec; var Value: TValue;
var Handled: Boolean);
procedure LinkPropertyToFieldText2AssigningValue(Sender: TObject;
AssignValueRec: TBindingAssignValueRec; var Value: TValue;
var Handled: Boolean);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure PrototypeBindSource1CreateAdapter(Sender: TObject;
var ABindSourceAdapter: TBindSourceAdapter);
private
FMemo1LinesTextDefault:String;
FTPersistentFilePath :string;
{ Private declarations }
public
{ Public declarations }
end;
const FTPersistentFile ='FTPersistentFile.txt';
var
MasterDetailForm: TMasterDetailForm;
///<summary>获取或展示MimeType即ContentType并输出TMimeTypes.TKind对于的文件种类字符串(未定义'Undefined', 二进制'Binary', 文本'Text'),参数:(AExt='')则返回所有类型文件扩展名对应的MimeType列表字符串回车换行分割;not (AExt='')则返回传入扩展名的MimeType</summary>
function getMimeTypes(const AExt:string;var AKind:string):string;
function getExtOfMimeTypes(const AType:string;var AKind:string):string;
implementation
{$R *.fmx}
uses
myFuc_UnifiedPlatForm, myFuc_Client;
//:这是我自己用的库单元,主要用于本例需要使用的权限和下面的路径生成(替换成你自己的)
const
FMimeTypeList =
CONTENTTYPE_NONE +','
+'application/atom+xml' +','
+'application/ecmascript' +','
+'application/EDI-X12' +','
+'application/EDIFACT' +','
+'application/json' +','
+'application/javascript' +','
+'application/octet-stream' +','
+ 'application/ogg' +','// do not localize
+ 'application/pdf' +',' // do not localize
+ 'application/postscript' +',' // do not localize
+ 'application/rdf+xml' +',' // do not localize
+ 'application/rss+xml' +',' // do not localize
+ 'application/soap+xml' +',' // do not localize
+ 'application/font-woff' +',' // do not localize
+ 'application/xhtml+xml' +',' // do not localize
+ 'application/xml' +',' // do not localize
+ 'application/xml-dtd' +',' // do not localize
+ 'application/xop+xml' +',' // do not localize
+ 'application/zip' +',' // do not localize
+ 'application/gzip' +',' // do not localize
// Type Text
+ 'text/cmd' +',' // do not localize
+ 'text/css' +',' // do not localize
+ 'text/csv' +',' // do not localize
+ 'text/html' +',' // do not localize
+ 'text/javascript' +',' // do not localize
+ 'text/plain' +',' // do not localize
+ 'text/vcard' +',' // do not localize
+ 'text/xml' +',' // do not localize
// Type Audio
+ 'audio/basic' +',' // do not localize
+ 'audio/L24' +',' // do not localize
+ 'audio/mp4' +',' // do not localize
+ 'audio/mpeg' +',' // do not localize
+ 'audio/ogg' +',' // do not localize
+ 'audio/vorbis' +',' // do not localize
+ 'audio/vnd.rn-realaudio' +',' // do not localize
+ 'audio/vnd.wave' +',' // do not localize
+ 'audio/webm' +',' // do not localize
// Type Image
+ 'image/gif' +',' // do not localize
+ 'image/jpeg' +',' // do not localize
+ 'image/pjpeg' +',' // do not localize
+ 'image/png' +',' // do not localize
+ 'image/svg+xml' +',' // do not localize
+ 'image/tiff' +',' // do not localize
// Type Message
+ 'message/http' +',' // do not localize
+ 'message/imdn+xml' +',' // do not localize
+ 'message/partial' +',' // do not localize
+ 'message/rfc822' +',' // do not localize
// Type Model (3D Models)
+ 'model/example' +',' // do not localize
+ 'model/iges' +',' // do not localize
+ 'model/mesh' +',' // do not localize
+ 'model/vrml' +',' // do not localize
+ 'model/x3d+binary' +',' // do not localize
+ 'model/x3d+vrml' +',' // do not localize
+ 'model/x3d+xml' +',' // do not localize
// Type Multipart
+ 'multipart/mixed' +',' // do not localize
+ 'multipart/alternative' +',' // do not localize
+ 'multipart/related' +',' // do not localize
+ 'multipart/form-data' +',' // do not localize
+ 'multipart/signed' +',' // do not localize
+ 'multipart/encrypted' +',' // do not localize
// Type Video
+ 'video/mpeg' +',' // do not localize
+ 'video/mp4' +',' // do not localize
+ 'video/ogg' +',' // do not localize
+ 'video/quicktime' +',' // do not localize
+ 'video/webm' +',' // do not localize
+ 'video/x-matroska' +',' // do not localize
+ 'video/x-ms-wmv' +',' // do not localize
+ 'video/x-flv' +',' // do not localize
// Type Application - Vendor Specific
+ 'application/vnd.oasis.opendocument.text' +',' // do not localize
+ 'application/vnd.oasis.opendocument.spreadsheet' +','
// do not localize
+ 'application/vnd.oasis.opendocument.presentation' +','
// do not localize
+ 'application/vnd.oasis.opendocument.graphics' +','
// do not localize
+ 'application/vnd.ms-excel' +',' // do not localize
+
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' +',' // do not localize
+ 'application/vnd.ms-powerpoint' +',' // do not localize
+
'application/vnd.openxmlformats-officedocument.presentationml.presentation' +',' // do not localize
+
'application/vnd.openxmlformats-officedocument.wordprocessingml.document' +',' // do not localize
+ 'application/vnd.mozilla.xul+xml' +',' // do not localize
+ 'application/vnd.google-earth.kml+xml' +',' // do not localize
+ 'application/vnd.google-earth.kmz' +',' // do not localize
+ 'application/vnd.dart' +',' // do not localize
+ 'application/vnd.android.package-archive' +',' // do not localize
// Type X (RFC 6648)
+ 'application/x-deb' +',' // do not localize
+ 'application/x-dvi' +',' // do not localize
+ 'application/x-font-ttf' +',' // do not localize
+ 'application/x-javascript' +',' // do not localize
+ 'application/x-latex' +',' // do not localize
+ 'application/x-mpegURL' +',' // do not localize
+ 'application/x-rar-compressed' +',' // do not localize
+ 'application/x-shockwave-flash' +',' // do not localize
+ 'application/x-stuffit' +',' // do not localize
+ 'application/x-tar' +',' // do not localize
+ 'application/x-www-form-urlencoded' +',' // do not localize
+ 'application/x-xpinstall' +',' // do not localize
+ 'audio/x-aac' +',' // do not localize
+ 'audio/x-caf' +',' // do not localize
+ 'image/x-xcf' +',' // do not localize
+ 'text/x-gwt-rpc' +',' // do not localize
+ 'text/x-jquery-tmpl' +',' // do not localize
+ 'text/x-markdown' +',' // do not localize
// Type PKCS (Cryptography)
+ 'application/x-pkcs12' +',' // do not localize
+ 'application/x-pkcs7-certificates' +',' // do not localize
+ 'application/x-pkcs7-certreqresp' +',' // do not localize
+ 'application/x-pkcs7-mime' +',' // do not localize
+ 'application/x-pkcs7-signature' +',' // do not localize
// Type Application - Embarcadero Specific
+ 'application/vnd.embarcadero.firedac+json' +',' // do not localize
;
procedure TMasterDetailForm.FormCreate(Sender: TObject);
begin
try
AndoidRequestPermissions(['管理文档','读取文件','写入文件']);//:合称"存储权限"
//:你需要实现Android运行时的动态权限申请和用户确认
finally
try
SubPathOfAppPublished; //:设置本地存取路径:替换成自己的代码
finally
FTPersistentFilePath:=GetSubPathOfAppPublished('Download','files'); //:获取本地存取路径:替换成自己的代码
end;
end;
PrototypeBindSource1.AutoActivate:=false;
//:1、产生主窗体时下关闭PrototypeBindSource1原型绑定源:数据源:是一个本地数据集
end;
procedure TMasterDetailForm.PrototypeBindSource1CreateAdapter(
Sender: TObject;
var ABindSourceAdapter: TBindSourceAdapter);
begin
FMemo1LinesTextDefault:=Memo1.Lines.Text;
//:2、PrototypeBindSource1原型绑定源(数据源)在适配数据的过程完成之前需要处理点什么
end;
procedure TMasterDetailForm.FormShow(Sender: TObject);
begin
PrototypeBindSource1.Active:=true;
lblName.Text:='展示MimeType即ContentType';
lblTitle.Text:='如何提取MimeType即ContentType的数值';
DetailLabel.Text:='你点选的明细项说明';
Memo1.Lines.Text:=FMemo1LinesTextDefault;
//:3、将UI及PrototypeBindSource1原型绑定源(数据源)适配的数据显示出来后
//:变更赋值 默认绑定适配的数据 进行显示
end;
procedure TMasterDetailForm.LinkControlToField1AssigningValue(
Sender: TObject;
AssignValueRec: TBindingAssignValueRec; var Value: TValue;
var Handled: Boolean);
//:处理LiveBindings Designer绑定精灵设计器中的绑定控件:LinkControlToField1正在指派数值的事件
begin
if ( (AssignValueRec.OutObj as TMemo)=Memo1) then
begin //PrototypeBindSource1原型绑定源:数据源:是一个本地数据集
//:如果LiveBindings Designer绑定精灵设计器中的绑定控件:LinkControlToField1
//:正在分配值记录(TBindingAssignValueRec)的输出对象(AssignValueRec.OutObj )是Memo1的话
//Value:='如何提取MimeType即ContentType的数值';
//Handled:=true; //:那么就不进行默认绑定源(PrototypeBindSource1)的赋值处理:不要搞反了
if ListView1.ItemIndex=0 then
begin
//BindingsList1.BindCompCount BindingsList1.BindComps[BindCompCount]
Value:=FMemo1LinesTextDefault;
Handled:=false; //:那么就按照运行时TValue的指定值进行绑定处理:不要搞反了
end else
begin
AssignValueRec.OutProp:=PrototypeBindSource1.FieldDefs.Items[PrototypeBindSource1.FieldDefs.IndexOf('LoremIpsum1')].Name;
Handled:=false; //:按默认绑定数值处理
end;
end;
end;
procedure TMasterDetailForm.LinkPropertyToFieldText2AssigningValue(
Sender: TObject;
AssignValueRec: TBindingAssignValueRec; var Value: TValue;
var Handled: Boolean);
begin
if ( (AssignValueRec.OutObj as TLabel)=lblTitle) then
begin //PrototypeBindSource1原型绑定源:数据源:是一个本地数据集
//:如果LiveBindings Designer绑定精灵设计器中的绑定控件:LinkControlToField1
//:正在分配值记录(TBindingAssignValueRec)的输出对象(AssignValueRec.OutObj )是Memo1的话
if ListView1.ItemIndex=0 then
begin
//BindingsList1.BindCompCount BindingsList1.BindComps[BindCompCount]
Value:='如何提取MimeType即ContentType的数值';
Handled:=false; //:那么就按照运行时TValue的指定值进行绑定处理:不要搞反了
end else
begin
AssignValueRec.OutProp:=PrototypeBindSource1.FieldDefs.Items[PrototypeBindSource1.FieldDefs.IndexOf('ContactTitle1')].Name;
Handled:=false; //:按默认绑定数值处理
end;
end;
end;
procedure TMasterDetailForm.LinkPropertyToFieldTextAssigningValue(
Sender: TObject;
AssignValueRec: TBindingAssignValueRec; var Value: TValue;
var Handled: Boolean);
begin
if ( (AssignValueRec.OutObj as TLabel)=lblName) then
begin //PrototypeBindSource1原型绑定源:数据源:是一个本地数据集
//:如果LiveBindings Designer绑定精灵设计器中的绑定控件:LinkControlToField1
//:正在分配值记录(TBindingAssignValueRec)的输出对象(AssignValueRec.OutObj )是Memo1的话
if ListView1.ItemIndex=0 then
begin
//BindingsList1.BindCompCount BindingsList1.BindComps[BindCompCount]
Value:='展示MimeType即ContentType';
Handled:=false; //:那么就按照运行时TValue的指定值进行绑定处理:不要搞反了
end else
begin
AssignValueRec.OutProp:=PrototypeBindSource1.FieldDefs.Items[PrototypeBindSource1.FieldDefs.IndexOf('ContactName1')].Name;
Handled:=false; //:按默认绑定数值处理
end;
end;
end;
procedure TMasterDetailForm.ListView1UpdatingObjects(
const Sender: TObject;
const AItem: TListViewItem;
var AHandled: Boolean);
begin
// ListView1在更新过程中改变一些赋值及状态等做点什么...:
if (AItem.Index>1) then
begin
AHandled:=true; //:意思是不处理:不要搞反了
exit;
end else
if (AItem.Index=0) then
begin
AItem.Text:='展示MimeType即ContentType';
AHandled:=false;
end else AHandled:=false; //:意思是处理:不要搞反了
end;
procedure TMasterDetailForm.ListView1UpdateObjects(
const Sender: TObject;
const AItem: TListViewItem);
begin
// ListView1更新完成后做点什么...:
end;
procedure TMasterDetailForm.ListView1ItemClick(
const Sender: TObject; const AItem: TListViewItem);
var LExt, LType, LKind: string;
begin
// ListView1更新完成后其某项TListViewItem的点击事件做点什么...:
MultiView1.HideMaster; //:首先隐藏MultiView1
//然后....:
system.TMonitor.Enter(Memo1,0);
Memo1.Locked:=true;
if (AItem<>nil) and (AItem.Index=0) then //:如果存在TListViewItem且点击了第1项
begin
LExt:=''; LKind:= '';
Memo1.Lines.Text:=getMimeTypes(LExt,LKind); //:展示展示MimeType即ContentType
Memo1.Lines.SaveToFile(FTPersistentFilePath + FTPersistentFile);
end;
if (AItem<>nil) and (AItem.Index=1) then //:如果存在TListViewItem且点击了第2项
begin
LType:=''; LKind:= '';
Memo1.Lines.Text:=getExtOfMimeTypes(LType,LKind); //:展示展示MimeType即ContentType
Memo1.Lines.SaveToFile(FTPersistentFilePath + FTPersistentFile);
end;
Memo1.Locked:=false;
system.TMonitor.Exit(Memo1);
end;
function getMimeTypes(const AExt:string;var AKind:string):string;
//获取或展示MimeType即ContentType并输出TMimeTypes.TKind对于的文件种类字符串(未定义'Undefined', 二进制'Binary', 文本'Text'),
//参数:(AExt='')则返回所有类型文件扩展名对应的MimeType列表字符串回车换行分割;
//参数:not (AExt='')则返回传入扩展名的MimeType
var LExt: string; LType: string; LKind: TMimeTypes.TKind; LTKindStr:string;
LMimeTypes:TMimeTypes;
LStrings:TArray<System.string>; LStringList:TStringList;
LCountOfStrings,LLoop:Integer;
LResult:string;
begin
LStringList:=TStringList.Create;
LMimeTypes:=TMimeTypes.Default;
try
if AExt.Trim<>'' then
begin
LMimeTypes.GetExtInfo( AExt,LType,LKind );
case LKind of
TMimeTypes.TKind.Undefined: AKind:='未定义MimeType';
TMimeTypes.TKind.Binary: AKind:='二进制MimeType';
TMimeTypes.TKind.Text: AKind:='文本MimeType';
end;
LResult:=LType;
end else
begin
LExt:='txt,json,apk,ipa';
LStrings:=LExt.Split([',']);
LCountOfStrings:=Length(LStrings);
for LLoop := Low(LStrings) to High(LStrings) do
begin
LMimeTypes.GetExtInfo( LStrings[LLoop],LType,LKind );
case LKind of
TMimeTypes.TKind.Undefined: LTKindStr:='未定义MimeType';
TMimeTypes.TKind.Binary: LTKindStr:='二进制MimeType';
TMimeTypes.TKind.Text: LTKindStr:='文本MimeType';
end;
if LStrings[LLoop].Trim<>'' then
LStringList.Add('文件扩展名:'+LStrings[LLoop]+',对应的MimeType为:'+LType+',MimeType种类为:'+LTKindStr +sLineBreak );
LResult:=LStringList.Text;
end;
end;
finally
LStringList.Free;
//LMimeTypes.Free; //:类方法获取的,千万不能做释放
Result:=LResult;
end;
end;
function getExtOfMimeTypes(const AType:string;var AKind:string):string;
var LExt: string; LType: string; LKind: TMimeTypes.TKind; LTKindStr:string;
LMimeTypes:TMimeTypes;
LStrings:TArray<System.string>; LStringList:TStringList;
LCountOfStrings,LLoop:Integer;
LResult:string;
begin
LStringList:=TStringList.Create;
LMimeTypes:=TMimeTypes.Default;
try
if AType.Trim<>'' then
begin
LMimeTypes.GetTypeInfo( AType,LExt,LKind );
case LKind of
TMimeTypes.TKind.Undefined: AKind:='未定义MimeType';
TMimeTypes.TKind.Binary: AKind:='二进制MimeType';
TMimeTypes.TKind.Text: AKind:='文本MimeType';
end;
LResult:=LExt;
end else
begin
LType :=FMimeTypeList;
LStrings:=LType.Split([',']);
LCountOfStrings:=Length(LStrings);
for LLoop := Low(LStrings) to High(LStrings) do
begin
LMimeTypes.GetTypeInfo( LStrings[LLoop], LExt, LKind );
case LKind of
TMimeTypes.TKind.Undefined: LTKindStr:='未定义MimeType';
TMimeTypes.TKind.Binary: LTKindStr:='二进制MimeType';
TMimeTypes.TKind.Text: LTKindStr:='文本MimeType';
end;
if LStrings[LLoop].Trim<>'' then
LStringList.Add('MimeType:'+LStrings[LLoop]+',对应的文件扩展名为:'+LExt+',MimeType种类为:'+LTKindStr +sLineBreak );
LResult:=LStringList.Text;
end;
end;
finally
LStringList.Free;
//LMimeTypes.Free; //:类方法获取的,千万不能做释放
Result:=LResult;
end;
end;
end.
二、代码运行后,你便获得了:
delphi支持哪些MimeType,如何知道这些MimeType与文件扩展名的对应关系,以及它们是文本种类、二进制种类还是未定义的:
MimeType:application/atom+xml,对应的文件扩展名为:atom,MimeType种类为:文本MimeType
MimeType:application/ecmascript,对应的文件扩展名为:ecma,MimeType种类为:文本MimeType
MimeType:application/EDI-X12,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/EDIFACT,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/json,对应的文件扩展名为:json,MimeType种类为:文本MimeType
MimeType:application/javascript,对应的文件扩展名为:js,MimeType种类为:文本MimeType
MimeType:application/octet-stream,对应的文件扩展名为:bin,MimeType种类为:二进制MimeType //:IOS应用程序包的压缩文档,对应的文件扩展名为ipa
MimeType:application/ogg,对应的文件扩展名为:ogx,MimeType种类为:未定义MimeType
MimeType:application/pdf,对应的文件扩展名为:pdf,MimeType种类为:二进制MimeType
MimeType:application/postscript,对应的文件扩展名为:ai,MimeType种类为:未定义MimeType
MimeType:application/rdf+xml,对应的文件扩展名为:rdf,MimeType种类为:文本MimeType
MimeType:application/rss+xml,对应的文件扩展名为:rss,MimeType种类为:文本MimeType
MimeType:application/soap+xml,对应的文件扩展名为:soap,MimeType种类为:文本MimeType
MimeType:application/font-woff,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/xhtml+xml,对应的文件扩展名为:xhtml,MimeType种类为:文本MimeType
MimeType:application/xml,对应的文件扩展名为:xml,MimeType种类为:文本MimeType
MimeType:application/xml-dtd,对应的文件扩展名为:dtd,MimeType种类为:文本MimeType
MimeType:application/xop+xml,对应的文件扩展名为:xop,MimeType种类为:文本MimeType
MimeType:application/zip,对应的文件扩展名为:zip,MimeType种类为:二进制MimeType
MimeType:application/gzip,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:text/cmd,对应的文件扩展名为:cmd,MimeType种类为:文本MimeType
MimeType:text/css,对应的文件扩展名为:css,MimeType种类为:文本MimeType
MimeType:text/csv,对应的文件扩展名为:csv,MimeType种类为:文本MimeType
MimeType:text/html,对应的文件扩展名为:html,MimeType种类为:文本MimeType
MimeType:text/javascript,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:text/plain,对应的文件扩展名为:txt,MimeType种类为:文本MimeType
MimeType:text/vcard,对应的文件扩展名为:vcard,MimeType种类为:文本MimeType
MimeType:text/xml,对应的文件扩展名为:xml,MimeType种类为:文本MimeType
MimeType:audio/basic,对应的文件扩展名为:au,MimeType种类为:二进制MimeType
MimeType:audio/L24,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:audio/mp4,对应的文件扩展名为:mp4a,MimeType种类为:二进制MimeType
MimeType:audio/mpeg,对应的文件扩展名为:mpga,MimeType种类为:二进制MimeType
MimeType:audio/ogg,对应的文件扩展名为:oga,MimeType种类为:二进制MimeType
MimeType:audio/vorbis,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:audio/vnd.rn-realaudio,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:audio/vnd.wave,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:audio/webm,对应的文件扩展名为:weba,MimeType种类为:二进制MimeType
MimeType:image/gif,对应的文件扩展名为:gif,MimeType种类为:二进制MimeType
MimeType:image/jpeg,对应的文件扩展名为:jpeg,MimeType种类为:二进制MimeType
MimeType:image/pjpeg,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:image/png,对应的文件扩展名为:png,MimeType种类为:二进制MimeType
MimeType:image/svg+xml,对应的文件扩展名为:svg,MimeType种类为:二进制MimeType
MimeType:image/tiff,对应的文件扩展名为:tiff,MimeType种类为:二进制MimeType
MimeType:message/http,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:message/imdn+xml,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:message/partial,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:message/rfc822,对应的文件扩展名为:eml,MimeType种类为:未定义MimeType
MimeType:model/example,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:model/iges,对应的文件扩展名为:igs,MimeType种类为:未定义MimeType
MimeType:model/mesh,对应的文件扩展名为:msh,MimeType种类为:未定义MimeType
MimeType:model/vrml,对应的文件扩展名为:wrl,MimeType种类为:未定义MimeType
MimeType:model/x3d+binary,对应的文件扩展名为:x3db,MimeType种类为:未定义MimeType
MimeType:model/x3d+vrml,对应的文件扩展名为:x3dv,MimeType种类为:未定义MimeType
MimeType:model/x3d+xml,对应的文件扩展名为:x3d,MimeType种类为:文本MimeType
MimeType:multipart/mixed,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:multipart/alternative,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:multipart/related,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:multipart/form-data,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:multipart/signed,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:multipart/encrypted,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:video/mpeg,对应的文件扩展名为:mpeg,MimeType种类为:二进制MimeType
MimeType:video/mp4,对应的文件扩展名为:mp4,MimeType种类为:二进制MimeType
MimeType:video/ogg,对应的文件扩展名为:ogv,MimeType种类为:二进制MimeType
MimeType:video/quicktime,对应的文件扩展名为:qt,MimeType种类为:二进制MimeType
MimeType:video/webm,对应的文件扩展名为:webm,MimeType种类为:二进制MimeType
MimeType:video/x-matroska,对应的文件扩展名为:mkv,MimeType种类为:二进制MimeType
MimeType:video/x-ms-wmv,对应的文件扩展名为:wmv,MimeType种类为:二进制MimeType
MimeType:video/x-flv,对应的文件扩展名为:flv,MimeType种类为:二进制MimeType
MimeType:application/vnd.oasis.opendocument.text,对应的文件扩展名为:odt,MimeType种类为:未定义MimeType
MimeType:application/vnd.oasis.opendocument.spreadsheet,对应的文件扩展名为:ods,MimeType种类为:未定义MimeType
MimeType:application/vnd.oasis.opendocument.presentation,对应的文件扩展名为:odp,MimeType种类为:未定义MimeType
MimeType:application/vnd.oasis.opendocument.graphics,对应的文件扩展名为:odg,MimeType种类为:未定义MimeType
MimeType:application/vnd.ms-excel,对应的文件扩展名为:xls,MimeType种类为:未定义MimeType
MimeType:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,对应的文件扩展名为:xlsx,MimeType种类为:未定义MimeType
MimeType:application/vnd.ms-powerpoint,对应的文件扩展名为:ppt,MimeType种类为:未定义MimeType
MimeType:application/vnd.openxmlformats-officedocument.presentationml.presentation,对应的文件扩展名为:pptx,MimeType种类为:未定义MimeType
MimeType:application/vnd.openxmlformats-officedocument.wordprocessingml.document,对应的文件扩展名为:docx,MimeType种类为:未定义MimeType
MimeType:application/vnd.mozilla.xul+xml,对应的文件扩展名为:xul,MimeType种类为:文本MimeType
MimeType:application/vnd.google-earth.kml+xml,对应的文件扩展名为:kml,MimeType种类为:文本MimeType
MimeType:application/vnd.google-earth.kmz,对应的文件扩展名为:kmz,MimeType种类为:未定义MimeType
MimeType:application/vnd.dart,对应的文件扩展名为:dart,MimeType种类为:未定义MimeType
MimeType:application/vnd.android.package-archive,对应的文件扩展名为:apk,MimeType种类为:未定义MimeType //:Android应用程序包的压缩文档,对应的文件扩展名为apk
MimeType:application/x-deb,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/x-dvi,对应的文件扩展名为:dvi,MimeType种类为:未定义MimeType
MimeType:application/x-font-ttf,对应的文件扩展名为:ttf,MimeType种类为:未定义MimeType
MimeType:application/x-javascript,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/x-latex,对应的文件扩展名为:latex,MimeType种类为:未定义MimeType
MimeType:application/x-mpegURL,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/x-rar-compressed,对应的文件扩展名为:rar,MimeType种类为:未定义MimeType
MimeType:application/x-shockwave-flash,对应的文件扩展名为:swf,MimeType种类为:未定义MimeType
MimeType:application/x-stuffit,对应的文件扩展名为:sit,MimeType种类为:未定义MimeType
MimeType:application/x-tar,对应的文件扩展名为:tar,MimeType种类为:未定义MimeType
MimeType:application/x-www-form-urlencoded,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/x-xpinstall,对应的文件扩展名为:xpi,MimeType种类为:未定义MimeType
MimeType:audio/x-aac,对应的文件扩展名为:aac,MimeType种类为:二进制MimeType
MimeType:audio/x-caf,对应的文件扩展名为:caf,MimeType种类为:二进制MimeType
MimeType:image/x-xcf,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:text/x-gwt-rpc,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:text/x-jquery-tmpl,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:text/x-markdown,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/x-pkcs12,对应的文件扩展名为:p12,MimeType种类为:未定义MimeType
MimeType:application/x-pkcs7-certificates,对应的文件扩展名为:p7b,MimeType种类为:未定义MimeType
MimeType:application/x-pkcs7-certreqresp,对应的文件扩展名为:p7r,MimeType种类为:未定义MimeType
MimeType:application/x-pkcs7-mime,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/x-pkcs7-signature,对应的文件扩展名为:,MimeType种类为:未定义MimeType
MimeType:application/vnd.embarcadero.firedac+json,对应的文件扩展名为:json,MimeType种类为:文本MimeType
三、原理
喜欢的话,就在下面点个赞、收藏就好了,方便看下次的分享: