delphi MimeType for Restful及delphi mime-type和文件扩展名对照表

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

三、原理

请参考上一篇:delphi XE应用Restful时Rest组件的delphi XE ContentType即delphi XE mime type怎样获取和表达:https://blog.csdn.net/pulledup/article/details/105749158

喜欢的话,就在下面点个赞、收藏就好了,方便看下次的分享:

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

专讲冷知识

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值