导航:首页 > 文件教程 > delphiword源代码

delphiword源代码

发布时间:2023-02-24 14:33:18

❶ 跪求Delphi的读写ACCESS中BLOB字段(内容为OLE模式的word内容,带格式)的源码!!急,谢谢!!

BLOB,长二进制数据;称OLE字段,这个字段类型,可以保存任何WIN系统下的文件,比如压缩包、可执行程序.exe、视频文件、动态连接库等等一切在WIN系统下可以运行的文件。WORD的文档当然可以保存了,也可以读出来,很早以前我做了一个文档保存器,起因是一个朋友说是要看一些黄片,但又不希望别人打开它的电脑时发现它在看黄片,于是我就做了一个,把所有的黄片,都保存在ACCESS中BLOB字段,这样要看时,就打开软件,从数据库中取出来,在用电脑上的播放器播放。后来我发现所有的WIN系统文件都可以保存其中。我就给这软件起名文档保存器。用DELPHI的OleContainer1: TOleContainer;控件做。WORD文档就要看你的系统安装情况了,如果你用完整版本的WIN系统,WORD、EXCEL文档可以直接在OleContainer1: TOleContainer控件中显示。

❷ 用Delphi在word中插入表

一个输出到模板表格中的例子
uses SysUtils,Windows,ADODB,DB,Word97,OleServer, Classes;
var
sSQL: String;
qry: TADOQuery;
fileN:OLEvariant;
oleGrid: array[1..5] of olevariant;
oWordApp: TWordApplication;
oWordDoc: TWordDocument;
sResult: String;
i: Integer;
begin
qry:= nil;
try
sResult:= ' ';
with qry do
begin
qry:= TADOQuery.Create(nil);
qry.LockType:= ltReadOnly;
//转换日期范围
//加载合同项目数据
sSQL:= 'select ProjectName, ProjectCode from FPPro_Project where ProjectID= '+ IntToStr(iProjectID);
db_uPublic_GetRecordset(gConn, sSQL, qry);
if RecordCount= 0 then
begin //如果没有记录,退出
qry.Free;
Result:= '没有找到项目记录! ';
Exit;
end;

//连接Word
oWordApp:= TWordApplication.Create(nil);
owordDoc:= TWordDocument.Create(nil);
try
oWordApp.Connect;
except
qry.Free;
owordDoc.Free;
oWordApp.Free;
Result:= '你可能没有安装Word! ';
Exit;
end;
fileN:= fucGetExePath+ 'Template\基础资料清单.dot ';
if not FileExists(fileN) then
begin
Result:= '没有找到模板文件! ';
Exit;
end;
oWordApp.Documents.Add(fileN,emptyparam);
oWordDoc.ConnectTo(oWordApp.ActiveDocument as _document);
oWordApp.Options.CheckSpellingAsYouType:= False; //关闭拼写检查
oWordApp.Options.CheckGrammarAsYouType:= False; //关闭语法检查
oleGrid[1]:= oWordDoc.Tables.Item(1);
oleGrid[1].Cell(1,2).Range.Text:= FieldByName( 'ProjectName ').AsString;
oleGrid[1].Cell(1,4).Range.Text:= FieldByName( 'ProjectCode ').AsString;

sSQL:= 'select FileName, CreateLogon, CreateDate from (FPPro_AddonFile '
+ 'left join FPPro_RFile on FPPro_AddonFile.FileID=FPPro_RFile.FileID) '
+ 'where FPPro_AddonFile.FileType=2 and FPPro_RFile.RelationKind=1 '
+ 'and FPPro_RFile.RID= '+ IntToStr(iProjectID);
db_uPublic_GetRecordset(gConn, sSQL, qry);

oleGrid[1].Cell(6,1).Range.Text:= '共计份数: '+ IntToStr(RecordCount)+ '份 ';
if RecordCount> 0 then
begin
//添加统计项目
First;
i:=4;
while not Eof do
begin
oleGrid[1].Cell(i,1).Range.Select;
oWordApp.Selection.Rows.Add(emptyparam); //插入空行
oleGrid[1].Cell(i,1).Range.Text:= FieldByName( 'FileName ').AsString;
oleGrid[1].Cell(i,2).Range.Text:= FieldByName( 'CreateLogon ').AsString;
oleGrid[1].Cell(i,3).Range.Text:= FieldByName( 'CreateDate ').AsString;

i:=i+1;
Next;
end;
end;

oWordApp.Visible:= True;
oWordApp.WindowState:= 1;
oWordApp.Activate;
end;
qry.Free;
oWordApp.Free;
owordDoc.Free;

Result:= sResult;
except
on e: Exception do
begin
qry.Free;
if owordDoc <> nil then owordDoc.Free;
if oWordApp <> nil then oWordApp.Free;
Result:= e.Message;
end;
end;
end;

❸ 谁能告诉告诉我啊

要这个做什么:

A

A:对象代码库文件

AAM:Authorwareshocked文件

AAS:Authorwareshocked包

ABF:Adobe二进制屏幕字体

ABK:CorelDRAW自动备份文件

ABS:该类文件有时用于指示一个摘要(就像在一篇有关科学方面的文章的一个摘要或概要,取自abstract)

ACE:Ace压缩档案格式

ACL:CorelDRAW6键盘快捷键文件

ACM:Windows系统目录文件

ACP:Microsoftoffice助手预览文件

ACR:美国放射医学大学文件格式

ACT:Microsoftoffice助手文件

ACV:OS/2的驱动程序,用于压缩或解压缩音频数据

AD:AfterDark屏幕保护程序

ADA:Ada源文件(非-GNAT)

ADB:Ada源文件主体(GNAT);HP100LX组织者的约定数据库

ADD:OS/2用于引导过程的适配器驱动程序

ADF:Amiga磁盘文件

ADI:AutoCAD设备无关二进制绘图仪格式

ADM:AfterDark多模块屏幕保护;WindowsNT策略模板

ADP:FaxWork用于传真调制解调器的交互安装文件;AstoundDynamite文件

ADR:AfterDark随机屏幕保护;SmartAddress的地址簿

ADS:Ada源文件说明书(GNAT)

AFM:Adobe的字体尺度

AF2,AF3:ABC的FlowChat文件

AI:AdobeIllustrator格式图形

AIF,AIFF:音频互交换文件,SiliconGraphicandMacintosh应用程序的声音格式

AIFC:压缩AIF

AIM:AOL即时信息传送

AIS:ACDSee图形序列文件;VelvetStudio设备文件

AKW:RoboHELP的帮助工程中所有A-关键词

ALAW:欧洲电话音频格式

ALB:JASCImageCommander相册

ALL:艺术与书信库

AMS:VelvetStudio音乐模块(MOD)文件;Extreme的Tracker模块文件

ANC:CanonComputer的调色板文件,包含一系列可选的颜色板

ANI:Windows系统中的动画光标

ANS:ANSI文本文件

ANT:SimAntForWindows中保存的游戏文件

API:AdobeAcrobat使用的应用程序设计接口文件

APR:LotusApproach97文件

APS:MicrosoftVisualC++文件

ARC:LHARC的压缩档案文件

ARI:Aristotle声音文件

ARJ:RobertJungARJ压缩包文件

ART:XaraStudio绘画文件;CanonCrayola美术文件;ClipArt文件格式;另一种光线跟踪格式;AOL使用的用Johnson—Grace压缩算法压缩的标记文件

ASA:MicrosoftVisualInterDev文件

ASC:ASCⅡ文本文件;PGP算法加密文件

ASD:MicrosoftWord的自动保存文件;Microsoft高级流媒体格式(,ASF)的描述文件;可用NSREX打开VelvetStudio例子文件

ASE:VelvetStudio采样文件

ASF:Microsoft高级流媒体格式文件

ASM:汇编语言源文件,Pro/E装配文件

ASO:AstoundDynamite对象文件

ASP:动态网页文件;ProCommPlus安装与连接脚本文件;Astound介绍文件

AST:Astound多媒体文件;ClarisWorks“助手”文件

ASV:DataCAD自动保存文件

ASX:Cheyenne备份脚本文件;Microsoft高级流媒体重定向器文件,视频文件

ATT:AT<Group4位图文件

ATW:来自个人软件的AnyTimeDeluxeForWindows个人信息管理员文件

AU:Sun/NeXT/DEC/UNIX声音文件;音频U-Law(读作“mu-law”)文件格式

AVB:ComputerAssociatesInoculan反病毒软件的病毒感染后文件

AVI:MicrosoftAudioVideoInterleave电影格式

AVR:AudioVisualResearch文件格式

AVS:应用程序可视化格式

AWD:FaxVien文档

AWR:Telsis数字储存音频文件扩展名格式

Axx:ARJ压缩文件的分包序号文件,用于将一个大文件压至几个小的压缩包中(xx取01-99的数字)

A3L:Authorware3.x库文件

A4L:Authorware4.x库文件

A5L:Authorware5.x库文件

A3M,A4M:AuthorwareMacintosh未打包文件

A4P:Authorware无运行时间的打包文件

A3W,A4W,A5W:未打包的AuthorwareWindows文件

B

BAK:备份文件

BAS:BASIC源文件

BAT:批处理文件

BDF:WestPointBridgerDesigner文件

BFC:Windows95Briefcase文档

BG:BackgammonForWindows下的游戏文件

BGL:MicrosoftFlightSimulator(微软飞行模拟器)的视景文件

BI:二进制文件

BIF:GroupWise的初始化文件

BIFF:XLIFE3D格式文件

BIN:二进制文件

BK,BK

BKS:IBMBookManagerRead书架文件

BMK:书签文件

BMP:Windows或OS/2位图文件

BMI:ApogeeBioMenace数据文件

BOOK:AdobeFrameMakerBook文件

BOX:LotusNotes的邮箱文件

BPL:BorlardDelph4打包库

BQY:BrioQuery文件

BRX:用于查看多媒体对象目录的文件

BSC:MSDeveloperStudio浏览器信息文件

BSP:Quake图形文件

BS1:ApogeeBlakeStone数据文件

BS_:MicrosoftBookshelfFind菜单外壳扩展名

BTM:Norton应用程序使用的批处理文件

BUD:Quicken的备份磁盘

BUN:CakeWalk声音捆绑文件(一种MIDI程序)

BW:SGI黑白图像文件

BWV:商业波形文件

BYU:BYU的电影文件格式

B4:HelixNutsandBolts文件

C

C:C代码文件

C0l:台风波形文件

CAB:Microsoft压缩档案文件

CAD:Softdek的DrafixCAD文件

CAL:CALS压缩位图;日历计划表数据

CAM:Casio照相机格式

CAP:压缩音乐文件格式

CAS:逗号分开的ASCⅡ文件

CAT:Quicken使用的IntellCharge分类文件

CB:Microsoft干净引导文件

CBI:二进制卷格式文件(用于IBM大型机系统)

CC:VisualdBASE用户自定义类文件

CCA:cc:邮件文件

CCB:VisualBasic动态按钮配置文件

CCF:多媒体查看器配置文件,用于OS/2

CCH:Corel图表文件

CCM:Lotuscc:邮箱(例如“INBOX.CCM”)

CCO:CyberChat数据文件

CCT:MacromediaDirectorShockwave投影

CDA:CD音频轨道

CDF:Microsoft频道定义格式文件

CDI:Philip的高密盘交互格式

CDM:VisualdBASE自定义数据模块文件

CDR:CorelDRAW绘图文件;原始音频CD数据文件

CDT:CorelDRAW模板

CDX:CorelDRAW压缩绘图文件;MicrosoftVisualFoxPro索引文件

CEL:CIMFast事件语言文件

CER:证书文件(MIMEx-x509-ca-cert)

CFB:Compton的多媒文件

CFG:配置文件

CFM:CotdFusion模板文件;VisualdBASEWindows用户定制表单

CGI:公共网关接口脚本文件

CGM:计算机图形元文件

CH:OS/2配置文件

CHK:由Windows磁盘碎片整理器或磁盘扫描保存的文件碎片

CHM:编译过的HTML文件

CHR:字符集(字体文件)

CHP:VenturaPublisher章节文件

CHT:ChartViem文件;HarvardGraphics矢量文件

CIF:AdaptecCD创建器CD映像文件

CIL:ClipGallery下载包

CIM:SimCity2000文件

CIN:OS/2改变控制文件用于跟踪INI文件中的变化

CK1:iD/ApogeeCommanderKeen1数据文件

CK2:iD/ApogeeCommanderKeen2数据文件

CK3:iD/ApogeeCommanderKeen3数据文件

CK4:iD/ApogeeCommanderKeen4数据文件

CK5:iD/ApogeeCommanderKeen5数据文件

CK6:iD/ApogeeCommanderKeen6数据文件

CLASS:java类文件

CLL:CrickSoftwareClicker文件

CLP:Windows剪贴板文件

CLS:VisualBasic类文件

CMD:WindowsNT,OS/2的命令文件;DOSCD/M命令文件;dBASEⅡ程序文件

CMF:Corel元文件

CMG:Chessmaster保存的游戏文件

CMP:JPEG位图文件;地址文档

CMV:CorelMove动画文件

CMX:CorelPresentationExchange图像

CNF:Telnet,Windows和其他其内格式会发生改变的应用程序使用的配置文件

CNM:Windows应用程序菜单选项和安装文件

CNQ:CompuworksDesignShop文件

CNT:Windows(或其他)系统用于帮助索引或其他目的内容文件

COB:TrueSpace2对象文件

COD:MicrosoftC编译器产生的可显示机器码/汇编代码文件,其中附有源C代码作为注释

COM:命令文件(程序)

CPD:CorelPrintOffice文件(图形)

CPD,CPE传真覆盖文档

CPI:MicrosoftMS-DOS代码页信息文件

CPL:控制面板扩展名,Corel颜色板

CPO:Corel打印存储文件

CPP:C++代码文件

CPR:Corel提供说明书文件

CPT:Corel照片-绘画图像

CPX:CorelPresentationExchange压缩图形文件

CRD:WindowsCardfile文件

CRP:Corel提供的运行时介绍文件;VisualdBASE自定义报表文件

CRT:认证文件

CSC:Corel脚本文件

CSP:PCEmceeOn_Screen图像

CSS:瀑布式表格文件

CST:MacromediaDirectorCast文件

CSV:逗号分隔的值文件

CT:ScitexCT位图文件;PaintShopProGrapic编辑器文件

CTL:通常用于表示一个包含控件信息的文件;FaxWork用它来保持有关每个传真收到或发出的信息

CUE:Microsoft提示牌数据文件

CUR:Windows光标文件

CUT:DrHalo位图文件

CV:Corel版本的档案文件;MicrosoftCodeView信息屏幕文件

CWK:ClarisWorks数据文件.

CWS:ClarisWorks模块

CXT:MacromediaDirector受保护的(不可编辑的)投影文件

CXX:C++源代码文件

D

DAT:数据文件;WrodPerfect合并数据文件;用于一些MPEG格式的文件

DB:Borland的Paradox7表

DBC:MicrosoftVisualFoxPro数据库容器文件

DBF:dBASE文件,一种由Ashton-Tate创建的格式,可以被ACT!、Lipper、FoxPro、Arago、Wordtech、Xbase和类似数据库或与数据库有关产品识别;可用数据文件(能被Excel97打开);Oracle8.1.x表格空间文件

DBX:DataBearn图像;MicrosoftVisualFoxPro表格文件

DCM:DCM模块格式文件

DCR:冲击波文件

DCS:桌面颜色分隔文件

DCT:MicrosoftVisualFoxPro数据库容器

DCU:Delphi编译单元文件

DCX:MicrosoftVisualFoxPro数据库容器;基于PCX的传真图像;宏

DC5:DataCAD绘图文件

DDF:Btrieve或Xtrieve数据定义文件,它包含用于描述Btrieve或Xtrieve文件的元数据

DDIF:DigitalEquipment或Compaq格式,用于保存他们图像与字处理文档

DEF:SmartWareⅡ数据文件;C++模块定义文件

DEFI:Oracle7卸载脚本文件

DEM:用于表示数字高度模型的USGS基准的文件

DER:认证文件

DEWF:MacintoshSoundCap/SoundEdit录音设备格式

DGN:Macintosh95CAD绘图文件

DIB:设备无关位图

DIC:目录

DIF:可进行数据互换的电子表格

DIG:DigiLink格式;SoundDesignerⅠ音频文件

DIR:MacromediaDirector文件

DIZ:描述文件

DLG:C++对话框脚本文件

DLL:动态链接库

DLS:可下载声音文件

DMD:VisualdBASE数据模块文件

DMF:X-Trakker音乐模块(MOD)文件

DOC:FrameMaker或FrameBuilder文档;WordStar文档、WordPerfect文档、MicrosoftWord文档;DisplayWrite文档

DOT:MicrosoftWord文档模板

DPL:BorlandDelph3压缩库

DPR:BorlandDelphi工程头文件

DRAW:Acorn的基于对象的矢量图像文件

DRV:驱动程序

DRW:MicrografxDesigner/Draw;Pro/E绘画文件

DSF:MicrografxDesignerVFX文件

DSG:DOOM保存的文件

DSM:DynamicStudio音乐模块(MOD)文件

DSP:MicrosoftDeveloperStudio工程文件

DSQ:CorelQUERY(查询)文件

DST:刺绣机图形文件

DSW:MicrosoftDeveloperStudio工作区文件

DTA:WordBank(世界银行)的STARS数据文件

DTD:SGML文档类型定义(DTD)文件

DTED:地面高度数字数据(图形的数据格式)文件

DTF:SymantecQ&A相关的数据库数据文件

DTM:DigiTrakker模块文件

DUN:Microsoft拔号网络导出文件

DV:数字视频文件(MIME)

DWD:DiamondWare数字化文件

DWG:AutoCAD工程图文件;AutoCAD或GenericCADD老版本的绘图格式

DXF:可进行互交换的绘图文件格式,二进制的DWG格式的文本表示;数据交换文件

DXR:MacromediaDirector受保护(不可编辑)电影文件

D64:Commodore的64位模拟磁盘图像文件

E

EDA:EnsoniqASR磁盘映像

EDD:元素定义文档(FrameMaker+SGML文档)

EDE:EnsoniqEPS磁盘映像

EDK:EnsoniqKT磁盘映像

EDQ:EnsoniqSQ1/SQ2/Ks32磁盘映像

EDS:EnsoniqSQ80磁盘映像

EDV:EnsoniqVFX-SD磁盘映像

EFA:EnsoniqASR文件

EFE:EnsoniqEPS文件

EFK:EnsoniqKT文件

EFQ:EnsoniqSQ1/SQ2/Ks32文件

EFS:EnsoniqSQ80文件

EFV:EnsoniqVFX-SD文件

EMD:ABT扩展模块

EMF:Windows增强元文件

EML:MicrosoftOutlookExpress邮件消息(MIMERTC822)文件

ENC:重演文件

ENFF:中性文件格式扩展名

EPHTML:Perl解释增强HTML文件

EPS:压缩的PostScript图像

EPSF:压缩的PostScript文件

ERI:ERWin文件

ERR:当RobooHELP帮助编译器企图编译一个帮助系统源文件时用来存储错误消息的文件

EPX:ERWin文件

ESPS:ESPS音频文件

EUI:EnsoniqESP家族的压缩磁盘映像

EVY:特使文档

EWL:MicrosoftEncarta文档

EXC:MicrosoftWord禁止字字典

EXE:可执行文件(程序)

F

F:FORTRAN文件

F2R:Farandoyle线性模块格式

F3R:Farandoyle分块线性模块格式

F77:FORTRAN文件

F90:FORTRAN文件

FAR:FradoleComposer音乐模块(MOD)文件

FAV:MicrosoftOutlook导航条

FAX:传真类型图像

FBK:Navison金融备份

FCD:虚拟CD-ROM

FDB:Navison金融数据库

FDF:AdobeAcrobat表单文档文件

FEM:CADRE有限元素网络文件

FFA,FFL,FFO,FFK:Microsoft快速查找文件

FFF:GUSPnP银行文件格式

FFT:最终格式文本(IBM的DCA一部分)

FH3:AlsFreehand3绘图文件

FIF:Fractal图像文件

FIG:REND386/AVRIL使用的文件格式

FITS:CCD照相机图像;灵活图像传输系统

FLA:MacromediaFlash电影

FLC:AutodeskFLIC动画文件

FLF:CorelParadox产生的格式:NavisonFinancials许可文件;OS/2驱动程序文件

FLI:AutodeskFLIC动画

FLT:StarTrekker音乐模块(MOD)文件;MultiGenInc的OpenFlight使用的文件格式;Corel过滤器文件

FM:AdobeFrameMaker文档

FMB:Oracle4.0版或以后版本表单的二进制源代码文件

FML:文件镜象列表(GetRight)

FMT:Oracle4.0版或以后版本表单的文本格式;MicrosoftSchele+打印文件

FMX:Oracle4.0版或以后版本可执行表单

FND:MicrosoftExplorer保存的搜索文件(Findapplet)

FNG:字体组文件(字体导航器,FontNavigator)

FNK:FunkTracker模块格式

FOG:Fontographer模块字体

FON:系统字体

FOR:FORTRAN文件

FOT:字体相关文件

FP:FileMakerPro文件

FP1:FlyingPigsforWindows数据文件

FP3:FileMakerPro文件

FPT:FileMakerPro文件;MicrosoftFoxPro备注字体文件

FPX:FlashPix位图

FRM:表单;FrameMaker或FrameBuilder文档;Oracle可执行表(3.0版或早期版本);VisualBasic表单;WordPerfectMerge表单;DataCAD标志报表文件

FRT:MicrosoftFoxPro报表文件

FRX:VisualBasic表单文本;MicrosoftFoxPro报表文件

FSF:fPrintAuditTool文件格式

FSL:Borland的Paradox7表单;CorelParadox保存的表单

FSM:Parandoyle示例格式

FT:LotusNotes全文本索引

FTG:全文本搜索组文件,由Windows帮助系统查找时产生——可以删除,并在需要时重建起来

FTS:全文本搜索引文件,由Windows帮助系统查找时产生

FW2:FrameworkⅡ文件

FW3:FrameworkⅢ文件

FW4:FrameworkⅣ文件

FXP:经MicrosoftFoxPro编译的源文件

FZB:CasioFZ-1银行转储

FZF:CasioFZ-1完全转储

FZV:CasioFZ-1声音转储

G

G721:RawCCITTG.721

G723:RawCCITTG.7233或5bitADPCM格式数据

GAL:Corel多媒体管理器相集

GCD:GenericCADD绘画文件(后续版本)

GCP:GroundControlPoint(地面控制点)文件,用于远景数据形成图像过程,经常用于生成图工程—CHIPS()使用这些文件

GDB:InterBase数据库文件

GDM:铃声、口哨声和声音板模块格式

GED:GEDCOM系谱数据文件,用于记录和交换系谱数据的流行格式;图形环境文档绘画

GEM:GEM元文件

GEN:Ventura产生的文本文件

GetRight:GetRight未完成的下载文件

GFC:Patton&PattonFlowCharting4flowchart文件

GFI,GFX:Genigraphics图形链接表示文件

GHO:Norton克隆磁盘映像

GID:Windows95全局索引文件(包括帮助状态)

GIF:CompuServe位图文件

GIM,GIX:Genigraphics图形链接介绍文件

GKH:EnsoniqEPS家簇磁盘映像文件

GKS:GravisGripKey文档

GL:动画格式

GNA:Genigraphics图形链接介绍文件

GNT:生成代码,MicroFocus属性格式里的可执行代码

GNX:Genigraphics图形链接介绍文件

GRA:MicrosoftGraph文件

GRD:用于远程视景数据产生地图过程的格式文件,通常应用于形成地图工程—CHIPS()使用这些文件

GRF:Grapher(GoldenSoftware公司)图形文件

GRP:程序管理组

GSM:RawGSM6.10音频流;Raw“bytealigned(比特对齐的)”GSM6.10音频流;USRobotics语音调制解调器

GTK:Graoumftracker(老)音乐模块(MOD)文件

GT2:Graoumftracker(新)音乐模块(MOD)文件

GWX,GWZ:Cenigraphis图形链接介绍文件

GZ:UNIXgzip压缩文件

H

H:C程序头文件

HCM:IBMHCM配置文件

HCOM:声音工具HCOM格式

HCR:IBMHCD/HCM产品配置文件

HDF:高级计算机应用程序本地中心(NCSA)geospatialHierarchial数据格式文件

HED:HighEdit文档

HEL:MicrosoftHellbender格式保存的游戏文件

HEX:MacintoshBinHex2.0文件

HGL:HP图形语言绘图文件

HH:映射文件,包括一些话题ID和在帮助文件系统中话题的映射数字—允许运行中应用程序发送给用户合适的上下文帮助话题

HLP:帮助文件;DateCADWindows帮助文件

HOG:LucasArts的DarkForcesWAD文件

HPJ:VisualBasic帮助工程

HPP:C++程序头文件

HQX:MacintoshBinHex4.0文件

HST:历史文件

HT:HyperTerminal(超级终端)

HTM,HTML:超文本文档

HTT:Microsoft超文本模板

HTX:扩展HTML模板

HXM:Descent2HAM文件扩展

I

ICA:Citrix文件

ICB:Targa位图文件

ICC:Kodak打印机格式文件

ICL:图标库文件

ICM:图形颜色匹配配置文件

ICO:Windows图标

IDB:MSDev中间层文件

IDD:MIDI设备定义

IDF:MIDI设备定义(Windows95需要的文件)

IDQ:Internet数据查询文件

IDX:MicrosoftFoxPro相关数据库索引文件;SymantecQ&A相关数据库索引文件;MicrosoftOutlookExpress文件

IFF:交换格式文件;AmigaILBM

IGES:初始图形交换说明文件

IGF:插入系统元文件

IIF:QuickBooksforWindows交换文件

ILBM:位图图形文件

IMA:WinImage磁盘映像文件

IMG:GEM映像

IMZ:WinImage压缩磁盘映像文件

INC:汇编语言或动态服务器包含文件

INF:信息文件

INI:初始化文件;MWaveDSPSynth的“nwsynth.ini”GMS安装;CravisUltrasoundbank安装

INP:Oracle3.0版或早期版本的表单源代码

INRS:INRS远程通信声频

INS:InstallShield安装脚本;X-Internet签字文件;EnsoniqEPS字簇设备;Cell/ⅡMAC/PC抽样设备

INT:中间代码,当一个源程序经过语法检查后编译产生一个可执行代码

IOF:Findit文档

IQY:MicrosoftInternet查询文件

ISO:根据ISD9660有关CD-ROM文件系统标准列出CD-ROM上的文件

ISP:X-Internet签字文件

IST:数字跟踪设备文件

ISU:InstallShield卸装脚本

IT:脉冲跟踪系统音乐模块(MOD)文件

ITI:脉冲跟踪系统设备

ITS:脉冲跟踪系统抽样,Internet文档位置

IV:OpenInventor中使用的文件格式

IVD:超过20/20微观数据维数或变量等级文件

IVP:超过20/20的用户子集配置文件

IVT:超过20/20表或集合数据文件

IVX:超过20/20微数据目录文件

IW:Idlewild屏幕保护程序

IWC:InstallWatch文档

J

J62:Ricoh照相机格式

JAR:Java档案文件(一种用于applet和相关文件的压缩文件)

JAVA:Java源文件

JBF:PaintShopPro图像浏览文件

JFF,JFIF,JIF:JPEG文件

JMP:SAS的JMPDiscovery表格统计文件

JN1:EpicMegaGames的JilloftheJungle数据文件

JPE,JPEG,JPG:JPEG图形文件

js:javascript源文件

JSP:HTML网页,其中包含有对一个Javaservlet的参考

JTF:JPEG位图文件

K

K25:Kurzweil2500抽样文件

KAR:卡拉OKMIDI文件(文本+MIDI)

KDC:Kodak光增强器

KEY:DataCAD图标工具条文件

KFX:KoFakGroup4图像文件

KIZ:Kodak数字明信片文件

KKW:RoboHELP帮助工程索引设计器中与主题无关的K开头的所有关键字

KMP:KorgTrinityKeyMap文件

KQP:Konica照相机本地文件

KR1:Kurzweil2000抽样(多软驱)文件

KRZ:Kurzweil2000抽样文件

KSF:KorgTrinity抽样文件

KYE:Kye游戏数据

L

LAB:VisualdBASE标签文件

LBM:DeluxePaint位图文件

LBT,LBX:MicrosoftFoxPro标签文件

LDB:MicrosoftAccess加锁文件

LDL:CorelParadox分发库

LEG:Legacy文档

LES:Logitech娱乐系统游戏配置文件(与REC文件一样)

LFT:3DStudio(DOS)放样文件

LGO:Paintbrush(Microsoft画图应用程序)的徽标文件

LHA:LZH更换文件后缀

LIB:库文件

LIN:DataCAD线型文件

LIS:结构化查询报告(SQR)程序产生的输出文件

LLX:Laplink交换代理

LNK:Windows快捷方式文件

LOG:日志文件

LPD:HelixNut和Bolt文件

LRC:Intel可视电话文件

LSL:CorelParadox保存的库文件

LSP:AutoLISP、CommonLISP和其他LISP语言文件

LST:列表文件

LU:ThoughtWing库单元文件

LVL:ParallaxSoftware的MinerDescent/D2Level扩展

LWLO:Lightwave分层对象文件

LWOB:Lightwave对象文件

LWP:LotusWordPro96/97文件

LWSC:Lightwave视景文件

LYR:DataCAD层文件

LZH:LHARC压缩档案

LZS:Skyroads数据文件

M

M1V:MPEG相关文件(MIME“mpeg”类型)

M3D:CorelMotion3D动画文件

M3U:MPEGURL(MIME声音文件)

MAC:MacPaint图像文件

MAD:MicrosoftAccess模块文件

MAF:MicrosoftAccess表单文件

MAG:在一些日本文件中发现的图形文件格式

MAGIC:魔力邮件监视器配置文件

MAK:VisualBasil或MicrosoftVisualC++工程文件

MAM:MicrosoftAccess宏

MAN:UNIX手册页输出

MAP:映射文件;DukeNukem3DWAD游戏文件

MAQ:MicrosoftAccess查询文件

MAR:MicrosoftAccess报表文件

MAS:文件

MAT:MicrosoftAccess表;3DStudioMAX材料库

MAUD:MAUD抽样格式

MAX:Kinetx的3DStudioMAX文件;该格式用于一个3D场景文件;Paperport文件;OrCAD设计文件

MAZ:Hover迷路数据;Division的dVS/dVISE使用的文件格式

MB1:ApogeeMonsterBash数据文件

MBOX:BerkeleyUnix邮箱格式

MBX:MicrosoftOutlook保存email格式;Eudora邮箱

MCC:Dailerl0呼叫卡

MCP:MetrowerksCodeWarrior工程文件

MCR:DataCAD键盘宏文件

MCW:MicrosoftWord的Macintosh文档

MDA:MicrosoftAccess内抽入器;MicrosoftAccess2.0版及其后续版本的工作组事件

MDB:MicrosoftAccess数据库

MDE:MicrosoftAccessMDE文件

MDL:数字跟踪器音乐模块(MOD)文件;Quake模块文件

MDN:MicrosoftAccess空数据库模板

MDW:MicrosoftAccess工作组文件

MDZ:MicrosoftAccess向导模板文件

MED:音乐编辑器,OctaMED音乐模块(MOD)文件

MER:电子表格/数据库数据交换格式;FileMaker、Excel及其他软件能识别

MET:表示管理器元文件

MFG:Pro/ENGINEER制造文件

MGF:在材料与

❹ 最先进的3D引擎构架

你好!~

一个难以实现的想法
MYSQL初学者使用指南与介绍
第一次使用多线程,领教到它的威力和脾气
第一次使用多线程,领教到它的威力和脾气
DirectX 9高层着色语言介绍
ZLib2000 3D加速渲染2D游戏
ZLib2000 融和+边缘模糊
Keyboard shortcuts
ZLib2000 即时光影
ZLib2000 即时光影
基于IE浏览器的图形聊天室(类可乐8)
ZLib2000 3D引擎
电视互动点播系统
Zephyr 3
关于大型网站的构架问题
冒泡排序的算法分析与改进
冒泡排序的算法分析与改进
在不同计算机上配置 BizTalk Server(运行时)和 BAS
两个有用的oracle数据库运算:intersect和minus运算
一个基于exosip的软电话例子
自绘菜单的实现
动态分组查询
ASP.NET 安全性
Squid做反向加速,配合DNS轮询实现简单负载均衡典型配置
Squid做反向加速,配合DNS轮询实现简单负载均衡典型配置
[dotNET]COM组件转换成.NET组件{ZT}
C++文件I/O示例
登陆
OSI网络结构的七层模型-网络大典
使用C#编程将websphere MQ 5.3 windows客户端消息发送到linux服务器端
Delphi 与 Word_VBA
设置Windows系统NTFS某个目录的用户访问权限(c#)
保存数据到 olevariant
delphi 常用函数
delphi 常用函数
精妙SQL语句介绍
文件与目录
口腹之欲的文化情怀(ZT)
口腹之欲的文化情怀(ZT)
linux partition table on PC
网络函数库
网络函数库
文件与Olevariant
TCP/IP协议-网络大典
TCP/IP协议-网络大典
关于时间函数
直接访问WebBrowser控件中的HTML源码
直接访问WebBrowser控件中的HTML源码
MVC架构模式
JNI字符集的转换
用C#开发opengl
SIP基本应用
vector方法
ADO.NET读书笔记系列之------ADO.NET概述
Delphi 与 Excel (二)
TStrings的AddObject方法应用
TStrings的AddObject方法应用
fileStream
数据补丁
面向实时物流作业的板坯库管理系统
数据压缩 -- 源码
HTML中的数据绑定(Data Binding)
.NET中的xpath
数据压缩 -- 应用
独立开发并公开源代码的项目
双精度浮点数的加法计算误差及其避免的初步方法
双精度浮点数的加法计算误差及其避免的初步方法
提高FastReplace速度 (fStrRep.pas)
C#的四个基本技巧
Tapestry + Spring + Hibernate 整合工作及相关问题
掌通无线短信平台演示版客户常见问题汇总
广角霸王!尼康800万像CP8400震撼上市
广角霸王!尼康800万像CP8400震撼上市
26个日文片假名导致Access搜索(80040e14/内存溢出)的解决办法
PHP写的挖金子游戏
如何创建原生的窗口程序
eclipse +cvs 的基本使用方法
如何创建原生的窗口程序
java 数据库基本操作
OSI网络结构的七层模型--网络大典
武钢2250mm热轧厂生产物流管理系统的研究与开发
数据结构学习笔记(C语言描述)
引导协议--网络大典
工作流基于Jboss与Mysql的环境配置
仿真视频手机的设计思想
Jdom使用指南
Jdom使用指南
61条面向对象设计的经验原则-《OOD启示录》Arthur J.Riel
创业中的一点点心情,与大家分享!希望大家多多支持!
knoppix
validate框架构建顺序
Word编程中,事件的作用和顺序
finding hidden moles on 2.6 kernel_mole_hunter
finding hidden moles on 2.6 kernel_mole_hunter
asp.net中合并DataGrid行
网站标题设计与搜索引擎
Samba
Introcing to Spring Framework
Tomcat下Session的使用与管理
Introcing to Spring Framework
在MSSQL版参与问题有所感触
.NET Remoting 安全性
.NET Remoting 安全性
写给新入行的测试组同事
Web 服务安全性
数据访问安全性
数据访问安全性
学习oracle sql loader 的使用
使用 VS.Net 自带打包工具对 Asp.Net Web 应用程序进行打包
XML Name Space----XML 命名空间
XML Name Space----XML 命名空间
安装Oracle9i失败,一定要重灌系统吗?(个人安装后的体会,与大家分享)
Windows下JAVA环境变量的设置祥解
C Error Explanation
Windows下JAVA环境变量的设置祥解
GCC User Guide
制作如IE的标题栏和工具栏(翻译)
制作如IE的标题栏和工具栏(翻译)
制作如IE的标题栏和工具栏(翻译)
JDK5新特性之二----新的格式化输出
“非计算机相关专业”的定义
Samba
浙江大学郑强教授的演讲(转载)
Sendmail
[SQl Server学习] step by step 前言!
linux常用的命令详细说明
安全之道:加密与数字签名
在DataGrid快速添加新行(c#)
用VB做课程设计我有很多问题
如何用JSP处理Oracle中CLOB类型的字段
关于"编译器失败,错误代码为 128。"的解决方案
之控制表格的字数的处理方法.
关于"编译器失败,错误代码为 128。"的解决方案
在 Asp.Net Web 应用程序中长时间装载页面时显示进度条
使用回车代替Tab键的功能代码
SAS9应用- 转化IntrNet架构的应用到IT架构的应用
session 禁止未登录越权浏览信息
寻找成功人生的方向
html&js经典技巧
JbuilderX的光标问题
IMP-00020错误的解决方法
java程序破解天意商务系统后台帐号
设计模式之Builder——购机篇
设计模式之Builder——购机篇
[转]项目管理感触
设计模式之Visitor——送礼篇
[转]项目存档管理规范
Struts+Hibernate+Spring 框架图我的翻译
Spring+Hibernate+Struts技术的一个分页程序,共享给大家
Spring+Hibernate+Struts技术的一个分页程序,共享给大家
计算机程序设计艺术(第I卷)
如何把String型的20%存到数据库里变成float型,也是20%
java中找到资源文件的路径
通过数据表动态建Treeview,绝对高效率!
关于XMLBeans/shcema,不得不说的话题
走入汇编的世界
在ASP.NET中点击一个按钮后让它变灰的简单方法
Mophun & J2ME 的游戏开发之旅(三)
用JS验证asp.net服务端控件
一个软件测试工程师的加班经历
用Visual Basic 6.0实现自动化测试
克隆一例
如何从现有程序升级到支持多国语言的程序!
OrientX 简述
OrientX 简述
FreeBSD 4.10 汉化总结
认识桌面主题及其管理工具
iterator 的使用
Java 2源码解读:java.util.ArrayList
Java 2源码解读:java.util.ArrayList
桌面主题之桌面图标
桌面主题之系统颜色
18个经典培训故事(3)
18个经典培训故事(3)
成为富有实现思想的系统开发者的几点建议
DirectX 9高层着色语言介绍2——语言基础(1)
究竟应该使用什么样的界面?
Delphi 消息机制引入的一个副作用
powerbuilder10试用手记
浙大在线评测 1109 Language of FatMouse
浙大在线评测 1150 S-Trees
浙大在线评测 1150 S-Trees
封装WinCpp
浙大在线评测 1151 Word Reversal
AOL欲推浏览器,决定用IE内核!
浙大在线评测 1159 487-3279
[转帖]IE经典故障写真
杀毒软件||俄罗斯卡巴斯基 最新官方英文服务器版 for Windows File Servers下
GMail Drive
抓屏软件||HyperSnap-DX 5.61.00 汉化版下载
由C#风潮想起的-给初学编程者的忠告( 作者: 刘巍 )
HTML 特殊代码
HTML 特殊代码
今日工作计划
猜想Builder模式的由来
猜想Builder模式的由来
struts开发实践—总论
struts开发实践—总论
struts开发实践—入门学习
struts开发实践—读写xml实例
l10n
l10n
struts开发实践—简单树的实现
struts开发实践—柱形图实例
struts开发实践—如何调用Excel
struts开发实践—柱形图实例
设计模式之Decorator——家装篇(原创)
Readers Choice Awards 2004
名字空间在XML中的应用(原创)
最近小弟在做portal项目,希望在apache开源项目上做,有同道的朋友请联系。msn:shido
名字空间在XML中的应用(原创)
调试SharePoint web part时, 如何可以多个人同时启动调试?
List添加Item时, 如何去判断某个字段, 并且保证字段数据不重复性
List添加Item时, 如何去判断某个字段, 并且保证字段数据不重复性
ORACLE常见错误代码的分析与解决(一)
关于提高基于OpenSSL软件的运行效率的研究
ORACLE常见错误代码的分析与解决(三)
关于提高基于OpenSSL软件的运行效率的研究
发布一个List记录查找Web Part: PowerSearch v1.0
typedef
将使用Access的论坛迁移到SqLServer中
使用自己的命名空间规范Webpart名称
ANT安装、配置
利用Java 创建和读取Excel文档
FLASHMX2004默认支持语法提示的AS后缀!
使用SPFolderCollection以及SPFolder对象分层次显示文档列表
文件过滤驱动的开发(上)
Useful SAP System Administration Transactions
精彩共赏:放出《IT大败局》电台访谈录音
电子商务的理想设计模式-CMP
Swt学习笔记(1)——配置环境
电子商务的理想设计模式-CMP
SWT学习笔记(2)——转载倪大鹏的“SWT:AWT和SWING的强大竞争者”
Eclipse 资源
程序员十大安全技巧(转贴)
SWT学习笔记(2)——转载倪大鹏的“SWT:AWT和SWING的强大竞争者”
Quake源代码分析(草稿).3
通过session传递值(原创)
Eclipse的可视化插件VE
我看软件开发中的误区--思考一
Struts下JSP页面传递复选框值技巧(原创)
态度决定一切——读《Writing clean code》有感
态度决定一切——读《Writing clean code》有感
几种上传方法介绍和比较(原创)
SWT学习笔记(3)——第一个程序
存储过程中建立一个表时出错,为什么?
密码学领域重大发现:成功破解MD5
JDK 1.5 特性使用实例1--Generics
字符集问题的初步探讨(六)-----乱码的产生
JDK 1.5 特性使用实例2--Varargs
Java游戏编程初步
JDK 1.5 特性使用实例3--AutoBoxing
我和我的台湾程序员同事们[5]
我和我的台湾程序员同事们[5]
What is Favicon.ico? Personalise Your Site's Bookm
经典解释――――中国男足为什么总是输? ZT
JDK 1.5 特性使用实例4--Enum
JDK 1.5 特性使用实例5--metadata
缩小SQL SERVER日志文件
JDK 1.5 特性使用实例5--metadata
JDK 1.5 特性使用实例6--staticimport
JDK 1.5 特性使用实例7--运行外部程序
如何使IFrame的长宽与内容自动适应大小
ARX中如何insert一个图(zt)
在XSL里应用javascript/C# Script等
在XSL里应用javascript/C# Script等
如何在unix下读写informix的数据(zxs3543)
使用VBA访问块和块引用数据
如果对字符型编号字段(如1-2)进行排序
修改servlet而不需要重新启动服务器(转载自CSDN之 wjmmml (笑着悲伤))
修改servlet而不需要重新启动服务器(转载自CSDN之 wjmmml (笑着悲伤))
Shark的概念模型及实现模型(部分)
让程序员汗颜的一贴
让程序员汗颜的一贴
收藏文章
我的webwork2的cookie拦截器
数据仓库与企业应用集成(二)
用javascript实现的日期时间输入控件
过去两年中我对代码重用的体验
签名与盖章之新课题-论电子签章之法律效力(转载)
NewEdit编辑器的MusicPlayV0.2插件Release!
磁盘配额的wmi版本(C#)
学习Shark的一些理解
STORED PROCEDURES: GOOD OR BAD(存储过程:好还是坏)
查找某目录下的所有文件
查找某目录下的所有文件
全球最小·灵气智慧 多普达565超详尽(pconline.com)
ACCESS:跨数据库查询的SQL语句
男人25岁前的忠告
CNNRadio-一边工作一边听CNN新闻
限制访问页面(原创)
软件和硬件
Linux必学60个命令文件处理
关于在eclipse中使用lomboz调试jsp的心得
用一条SQL完成数据表的行统计
HMAC-MD5的C#实现
用createPopup()方法来模似透明网页窗体
用createPopup()方法来模似透明网页窗体
VB.NET启动外部程序

❺ 用Delphi实现在word文档中快速查找关键字的源代码

用OLE来实现吧!
wordapp := CreateOleObject('Word.Application');
wordapp.Application.Visible := true;
worddoc := wordapp.Documents.open(FileName := path + 'word.doc', ReadOnly := False, AddToRecentFiles := False);

然后用WORD录下查找的VBA代码就可以了!

❻ delphi中退出是弹出让你确定的几种确定对话框怎么写

1、打开Delphi7集成开发环境,在默认工程的Form1窗体放一个Button1按钮,一个Edit1编辑框。

❼ delphi 如何写入Excel

在开发数据库应用程序中,经常要将类型相同的数据导出来,放到Excel文件中,利用Excel强大的编辑功能,对数据作进一步的加工处理。这有许多的方法,我们可以使用OLE技术,在Delphi中创建一个自动化对象,通过该对象来传送数据。也可以使用ADO,通过与Excel数据存储建立连接,使用ADO这种独立于数据库后端的技术来导出数据集的数据。
可这两种技术都有一个共同的缺点,那就是慢,数据量少还好,用户不会有太多的感觉,可一旦数据量大,比如,超过1千条,速度就让人难以忍受了,那么有没有更好的办法,既可以快速地导出数据,又不用安装附加的软件。也许好多人都想到了剪贴板的方式,这种方式速度是快,可也有不好的一面,那就是数据量大占用内存也大,并且在Excel中调用PASTE方法时,需要锁定输入,这使用起来,就有点不方便了
这里我为大家介始一种比较好的方法,使用文件流的方式,通过TfileStream直接写入Excel文件。我写了一个函数,通过它可将数据集中的数据直接导入到Excel文件中。测试了一下,1M的数据,不到十秒就完成了。附源程序。
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,DB, ADODB, Grids, DBGrids, StdCtrls;

type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
ADOTable1: TADOTable;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
ADOTable1record_id: TIntegerField;
ADOTable1action_id: TIntegerField;
ADOTable1action_name: TStringField;
ADOTable1net_name: TStringField;
ADOTable1deal_no: TStringField;
ADOTable1name: TStringField;
ADOTable1getno_date: TDateTimeField;
ADOTable1window_no: TIntegerField;
ADOTable1staff_id: TStringField;
ADOTable1staff_name: TStringField;
ADOTable1deal_date: TDateTimeField;
ADOTable1deal_type: TStringField;
ADOTable1finish_date: TDateTimeField;
ADOTable1state: TStringField;
ADOTable1appraise: TStringField;
ADOTable1appraised_flag: TBooleanField;
ADOTable1cancel_led_time: TDateTimeField;
ADOTable1wait_time: TBCDField;
ADOTable1wait_time2: TStringField;
ADOTable1accept_time: TBCDField;
ADOTable1accept_time2: TStringField;
ADOTable1getnumber_addr: TIntegerField;
ADOTable1cust_level: TIntegerField;
ADOTable1cust_level_name: TStringField;
ADOTable1cust_level_name_remark: TStringField;
ADOTable1operation_sum: TIntegerField;
Button1: TButton;
SaveDialog1: TSaveDialog;
procere Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
arXlsBegin: array[0..5] of Word = ($809, 8, 0, $10, 0, 0);
arXlsEnd: array[0..1] of Word = ($0A, 00);

arXlsString: array[0..5] of Word = ($204, 0, 0, 0, 0, 0);
arXlsNumber: array[0..4] of Word = ($203, 14, 0, 0, 0);

arXlsInteger: array[0..4] of Word = ($27E, 10, 0, 0, 0);

arXlsBlank: array[0..4] of Word = ($201, 6, 0, 0, $17);
implementation

{$R *.dfm}

Procere ExportExcelFile(FileName: string; bWriteTitle: Boolean; aDataSet: TDataSet);
var
i, j: integer;
Col, row: word;
ABookMark: TBookMark;
aFileStream: TFileStream;
procere incColRow; //增加行列号
begin
if Col = ADataSet.FieldCount - 1 then
begin
Inc(Row);
Col :=0;
end
else
Inc(Col);
end;
procere WriteStringCell(AValue: string);//写字符串数据
var
L: Word;
begin
L := Length(AValue);
arXlsString[1] := 8 + L;
arXlsString[2] := Row;
arXlsString[3] := Col;
arXlsString[5] := L;
aFileStream.WriteBuffer(arXlsString, SizeOf(arXlsString));
aFileStream.WriteBuffer(Pointer(AValue)^, L);
IncColRow;
end;
procere WriteIntegerCell(AValue: integer);//写整数
var
V: Integer;
begin
arXlsInteger[2] := Row;
arXlsInteger[3] := Col;
aFileStream.WriteBuffer(arXlsInteger, SizeOf(arXlsInteger));
V := (AValue shl 2) or 2;
aFileStream.WriteBuffer(V, 4);
IncColRow;
end;
procere WriteFloatCell(AValue: double);//写浮点数
begin
arXlsNumber[2] := Row;
arXlsNumber[3] := Col;
aFileStream.WriteBuffer(arXlsNumber, SizeOf(arXlsNumber));
aFileStream.WriteBuffer(AValue, 8);
IncColRow;
end;
begin
if FileExists(FileName) then
DeleteFile(FileName); //文件存在,先删除
aFileStream := TFileStream.Create(FileName, fmCreate);
Try
//写文件头
aFileStream.WriteBuffer(arXlsBegin, SizeOf(arXlsBegin));
//写列头
Col := 0; Row := 0;
if bWriteTitle then
begin
for i := 0 to aDataSet.FieldCount - 1 do
WriteStringCell(aDataSet.Fields[i].FieldName);
end;
//写数据集中的数据
aDataSet.DisableControls;
ABookMark := aDataSet.GetBookmark;
aDataSet.First;
while not aDataSet.Eof do
begin
for i := 0 to aDataSet.FieldCount - 1 do
case ADataSet.Fields[i].DataType of
ftSmallint, ftInteger, ftWord, ftAutoInc, ftBytes:
WriteIntegerCell(aDataSet.Fields[i].AsInteger);
ftFloat, ftCurrency, ftBCD:
WriteFloatCell(aDataSet.Fields[i].AsFloat)
else
WriteStringCell(aDataSet.Fields[i].AsString);
end;
aDataSet.Next;
end;
//写文件尾
AFileStream.WriteBuffer(arXlsEnd, SizeOf(arXlsEnd));
if ADataSet.BookmarkValid(ABookMark) then
aDataSet.GotoBookmark(ABookMark);
finally
AFileStream.Free;
ADataSet.EnableControls;
end;
end;

procere TForm1.Button1Click(Sender: TObject);
begin
if SaveDialog1.Execute then
begin
ExportExcelFile(SaveDialog1.FileName,True,DBGrid1.DataSource.DataSet);
end;
end;

end.

❽ delphi读取文本问题

ini文件处理方式,自己看

Delphi中的INI文件编程
2007年06月23日 星期六 16:34
INI文件在系统配置及应用程序参数保存与设置方面,具有很重要的作用,
所以可视化的编程一族,如VB、VC、VFP、Delphi等都提供了读写INI文件
的方法,其中Delphi中操作INI文件,最为简洁,这是因为Delphi3提供了
一个TInifile类,使我们可以非常灵活的处理INI文件。
一、有必要了解INI文件的结构:

;注释
[小节名]
关键字=值
...

INI文件允许有多个小节,每个小节又允许有多个关键字,“=”后面是
该关键字的值。
值的类型有三种:字符串、整型数值和布尔值。其中字符串存贮在INI文
件中时没有引号,布尔真值用1表示,布尔假值用0表示。

注释以分号“;”开头。

二、定义
1、在Interface的Uses节增加IniFiles;
2、在Var变量定义部分增加一行:

myinifile:Tinifile;

然后,就可以对变量myinifile进行创建、打开、读取、写入等操作了。
三、打开INI文件

myinifile:=Tinifile.create('program.ini');

上面这一行语句将会为变量myinifile与具体的文件program.ini建立联
系,然后,就可以通过变量myinifile,来读写program.ini文件中的关
键字的值了。
值得注意的是,如果括号中的文件名没有指明路径的话,那么这个
Program.ini文件会存储在Windows目录中,把Program.ini文件存储在应
用程序当前目录中的方法是:为其指定完整的路径及文件名。下面的两
条语句可以完成这个功能:

Filename:=ExtractFilePath(Paramstr
(0))+'program.ini';
myinifile:=Tinifile.Create(filename);

四、读取关键字的值
针对INI文件支持的字符串、整型数值、布尔值三种数据类型,
TINIfiles类提供了三种不同的对象方法来读取INI文件中关键字的值。
假设已定义变量vs、vi、vb分别为string、integer、boolean类型。

vs:=myinifile.Readstring
('小节名','关键字',缺省值);
vi:=myinifile.Readinteger
('小节名','关键字',缺省值);
vb:=myinifile.Readbool
('小节名','关键字',缺省值);

其中缺省值为该INI文件不存在该关键字时返回的缺省值。
五、写入INI文件
同样的,TInifile类也提供了三种不同的对象方法,向INI文件写
入字符串、整型数及布尔类型的关键字。

myinifile.writestring('小节名','关键字',变量或字符串值);
myinifile.writeinteger('小节名','关键字',变量或整型数值);
myinifile.writebool('小节名','关键字',变量或True或False);

当这个INI文件不存在时,上面的语句还会自动创建该INI文件。
六、删除关键字
除了可用写入方法增加一个关键字,Tinifile类还提供了一个删
除关键字的对象方法:

myinifile.DeleteKey('小节名','关键字');

七、小节操作
增加一个小节可用写入的方法来完成,删除一个小节可用下面的
对象方法:

myinifile.EraseSection('小节名');

另外Tinifile类还提供了三种对象方法来对小节进行操作:
myinifile.readsection('小节名',TStrings变量);可将指定小节中的
所有关键字名读取至一个字符串列表变量中;

myinifile.readsections(TStrings变量);可将INI文件中所有小节名读
取至一个字符串列表变量中去。

myinifile.readsectionvalues('小节名',TStrings变量);可将INI文件
中指定小节的所有行(包括关键字、=、值)读取至一个字符串列表变
量中去。

八、释放

在适当的位置用下面的语句释放myinifile:
myinifile.distory;

九、一个实例
下面用一个简单的例子(如图),演示了建立、读取、存贮INI文件的方
法。myini.ini文件中包含有“程序参数”小节,和用户名称(字符串
)、是否正式用户(布尔值)和已运行时间(整型值)三个关键字。
程序在窗体建立读取这些数据,并在窗体释放时写myini.ini文件。
附源程序清单

unitUnit1;
interface
uses
Windows,Messages,SysUtils,Classes,Graphics,
Controls,Forms,Dialogs,inifiles,StdCtrls,ExtCtrls;
type
TForm1=class(TForm)
Edit1:TEdit;
CheckBox1:TCheckBox;
Edit2:TEdit;
Label1:TLabel;
Label2:TLabel;
Timer1:TTimer;
Label3:TLabel;
procereFormCreate(Sender:TObject);
procereFormDestroy(Sender:TObject);
procereTimer1Timer(Sender:TObject);
private
{Privatedeclarations}
public
{Publicdeclarations}
end;
var
Form1:TForm1;

implementation
var
myinifile:TInifile;
{$R*.DFM}

procereTForm1.FormCreate(Sender:TObject);
var
filename:string;
begin
filename:=ExtractFilePath(paramstr(0))+'myini.ini';
myinifile:=TInifile.Create(filename);
edit1.Text:=myinifile.readstring
('程序参数','用户名称','缺省的用户名称');
edit2.text:=inttostr(myinifile.readinteger
('程序参数','已运行时间',0));
checkbox1.Checked:=myinifile.readbool
('程序参数','是否正式用户',False);
end;

procereTForm1.FormDestroy(Sender:TObject);
begin
myinifile.writestring('程序参数','用户名称',edit1.Text);
myinifile.writeinteger('程序参数','已运行时间',
strtoint(edit2.text));
myinifile.writebool('程序参数','是否正式用户',
checkbox1.Checked);
myinifile.Destroy;
end;

procereTForm1.Timer1Timer(Sender:TObject);
begin
edit2.Text:=inttostr(strtoint(edit2.text)+1);
end;

end.
{unit JxcPz;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Db, ADODB,inifiles;

const
C1 = 42578; // 常量说明
C2 = 62541; // 此二常量用于生成随机数

type
TJxcPzw = class(TForm)
grp1: TGroupBox;
lbl1: TLabel;
lbl2: TLabel;
edt_name: TEdit;
edt_mm: TEdit;
btn_cj: TButton;
btn_close: TButton;
adocon: TADOConnection;
lbl3: TLabel;
edt_yfmc: TEdit;
procere btn_closeClick(Sender: TObject);
procere btn_cjClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
JxcPzw: TJxcPzw;

implementation

{$R *.DFM}

function Encrypt(S:String;Key:Word):String;
var { 加密子程序 }
I,j:Integer; // 用于循环
begin
Result:=S; // 初始化结果字符串
for I:=1 to Length(S) do // 依次对字符串中的各个字符进行操作
begin
Result[I]:=char(byte(S[I]) xor (Key shr 8)); // 将密匙移位后与字符异或
Key:=(byte(Result[I])+Key)*C1+C2 // 产生下一密匙
end;
S:=Result; // 保存结果
Result:=''; // 清除结果
for I:=1 to Length(S) do // 对加密结果进行转换
begin
j:=Integer(s[i]); // 提取字符
Result:=Result+Char(65+(j div 26))+Char(65+(j mod 26));
end;
end;

function Decrypt(S:String;Key:Word):String;
var { 解密子函数 }
I,j:Integer;
begin
Result:=''; // 清除结果
for I:=1 to (length(S) div 2) do
begin
j:=(Integer(S[2*i-1])-65)*26;
j:=j+(Integer(S[2*i])-65);
Result:=Result+Char(j);
end;
S:=Result;
for I:=1 to Length(S) do
begin
Result[I]:=Char(byte(S[I]) xor (Key shr 8));
Key:=(byte(S[I])+Key)*C1+C2;
end;
end;

procere TJxcPzw.btn_closeClick(Sender: TObject);
begin
Application.Terminate;
end;

procere TJxcPzw.btn_cjClick(Sender: TObject);
var
inijxc: tinifile;
servernamejxc, usernamejxc, passwordjxc, connjxc,yfmcjxc: string;
begin
try
if trim(edt_name.Text) = '' then
begin
Application.MessageBox('服务器名称不能为空!', '系统配置', MB_OK + MB_ICONWarning);
edt_name.SetFocus;
exit;
end;
if trim(edt_mm.Text) = '' then
begin
Application.MessageBox('数据库密码不能为空!', '系统配置', MB_OK + MB_ICONWarning);
edt_mm.SetFocus;
exit;
end;
edt_name.Enabled := false;
edt_mm.Enabled := false;
edt_yfmc.Enabled:=false;
btn_cj.Enabled := false;
inijxc := TINIFile.Create(ExtractFilePath(application.ExeName) + 'inijxc.ini');
inijxc.WriteString('server', 'name', '' + edt_name.text + '');
inijxc.WriteString('server', 'user', 'sa');
inijxc.WriteString('server', 'pass', '' + encrypt(edt_mm.text,66) + '');
inijxc.WriteString('server', 'yfmc', '' + edt_yfmc.text + '');
ADOCon.close;
servernamejxc := inijxc.ReadString('server', 'name', '');
usernamejxc := inijxc.ReadString('server', 'user', '');
passwordjxc := inijxc.ReadString('server', 'pass', '');
yfmcjxc := inijxc.ReadString('server', 'yfmc', '');
connjxc := 'Provider=SQLOLEDB.1;Password=' + decrypt(passwordjxc,66) + ';Persist Security Info=True;User ID=' + usernamejxc + ';Initial Catalog=yygl;Data Source=' + servernamejxc;
ADOCon.ConnectionString := connjxc;
ADOCon.Open;
Application.MessageBox('配置创建成功!', '创建配置', 0);
exit;
except
begin
Application.MessageBox('数据库连接失败,请检测数据库密码及设置!', '系统服务配置', 0);
btn_cj.Enabled := true;
edt_name.Enabled := true;
edt_mm.Enabled := true;
edt_yfmc.Enabled:=True;
exit;
end;
inijxc.Free;
end;
end;

end.

❾ delphi 如何获取edit的text中的每个汉字首字母呢

碰巧我有这么一个函数
有点长,,不过,绝对能用

const py: array[216..247] of string = (
{216}'CJWGNSPGCGNESYPB' + 'TYYZDXYKYGTDJNMJ' + 'QMBSGZSCYJSYYZPG' +
{216}'KBZGYCYWYKGKLJSW' + 'KPJQHYZWDDZLSGMR' + 'YPYWWCCKZNKYDG',
{217}'TTNJJEYKKZYTCJNM' + 'CYLQLYPYQFQRPZSL' + 'WBTGKJFYXJWZLTBN' +
{217}'CXJJJJZXDTTSQZYC' + 'DXXHGCKBPHFFSSYY' + 'BGMXLPBYLLLHLX',
{218}'SPZMYJHSOJNGHDZQ' + 'YKLGJHXGQZHXQGKE' + 'ZZWYSCSCJXYEYXAD' +
{218}'ZPMDSSMZJZQJYZCD' + 'JEWQJBDZBXGZNZCP' + 'WHKXHQKMWFBPBY',
{219}'DTJZZKQHYLYGXFPT' + 'YJYYZPSZLFCHMQSH' + 'GMXXSXJJSDCSBBQB' +
{219}'EFSJYHXWGZKPYLQB' + 'GLDLCCTNMAYDDKSS' + 'NGYCSGXLYZAYBN',
{220}'PTSDKDYLHGYMYLCX' + 'PYCJNDQJWXQXFYYF' + 'JLEJBZRXCCQWQQSB' +
{220}'ZKYMGPLBMJRQCFLN' + 'YMYQMSQYRBCJTHZT' + 'QFRXQHXMJJCJLX',
{221}'QGJMSHZKBSWYEMYL' + 'TXFSYDSGLYCJQXSJ' + 'NQBSCTYHBFTDCYZD' +
{221}'JWYGHQFRXWCKQKXE' + 'BPTLPXJZSRMEBWHJ' + 'LBJSLYYSMDXLCL',
{222}'QKXLHXJRZJMFQHXH' + 'WYWSBHTRXXGLHQHF' + 'NMCYKLDYXZPWLGGS' +
{222}'MTCFPAJJZYLJTYAN' + 'JGBJPLQGDZYQYAXB' + 'KYSECJSZNSLYZH',
{223}'ZXLZCGHPXZHZNYTD' + 'SBCJKDLZAYFMYDLE' + 'BBGQYZKXGLDNDNYS' +
{223}'KJSHDLYXBCGHXYPK' + 'DQMMZNGMMCLGWZSZ' + 'XZJFZNMLZZTHCS',
{224}'YDBDLLSCDDNLKJYK' + 'JSYCJLKOHQASDKNH' + 'CSGANHDAASHTCPLC' +
{224}'PQYBSDMPJLPCJOQL' + 'CDHJJYSPRCHNKNNL' + 'HLYYQYHWZPTCZG',
{225}'WWMZFFJQQQQYXACL' + 'BHKDJXDGMMYDJXZL' + 'LSYGXGKJRYWZWYCL' +
{225}'ZMSSJZLDBYDCPCXY' + 'HLXCHYZJQSQQAGMN' + 'YXPFRKSSBJLYXY',
{226}'SYGLNSCMHCWWMNZJ' + 'JLXXHCHSYD CTXRY' + 'CYXBYHCSMXJSZNPW' +
{226}'GPXXTAYBGAJCXLYS' + 'DCCWZOCWKCCSBNHC' + 'PDYZNFCYYTYCKX',
{227}'KYBSQKKYTQQXFCWC' + 'HCYKELZQBSQYJQCC' + 'LMTHSYWHMKTLKJLY' +
{227}'CXWHEQQHTQHZPQSQ' + 'SCFYMMDMGBWHWLGS' + 'LLYSDLMLXPTHMJ',
{228}'HWLJZYHZJXHTXJLH' + 'XRSWLWZJCBXMHZQX' + 'SDZPMGFCSGLSXYMJ' +
{228}'SHXPJXWMYQKSMYPL' + 'RTHBXFTPMHYXLCHL' + 'HLZYLXGSSSSTCL',
{229}'SLDCLRPBHZHXYYFH' + 'BBGDMYCNQQWLQHJJ' + 'ZYWJZYEJJDHPBLQX' +
{229}'TQKWHLCHQXAGTLXL' + 'JXMSLXHTZKZJECXJ' + 'CJNMFBYCSFYWYB',
{230}'JZGNYSDZSQYRSLJP' + 'CLPWXSDWEJBJCBCN' + 'AYTWGMPABCLYQPCL' +
{230}'ZXSBNMSGGFNZJJBZ' + 'SFZYNDXHPLQKZCZW' + 'ALSBCCJXJYZHWK',
{231}'YPSGXFZFCDKHJGXD' + 'LQFSGDSLQWZKXTMH' + 'SBGZMJZRGLYJBPML' +
{231}'MSXLZJQQHZSJCZYD' + 'JWBMJKLDDPMJEGXY' + 'HYLXHLQYQHKYCW',
{232}'CJMYYXNATJHYCCXZ' + 'PCQLBZWWYTWBQCML' + 'PMYRJCCCXFPZNZZL' +
{232}'JPLXXYZTZLGDLDCK' + 'LYRLZGQTGJHHGJLJ' + 'AXFGFJZSLCFDQZ',
{233}'LCLGJDJCSNCLLJPJ' + 'QDCCLCJXMYZFTSXG' + 'CGSBRZXJQQCTZHGY' +
{233}'QTJQQLZXJYLYLBCY' + 'AMCSTYLPDJBYREGK' + 'JZYZHLYSZQLZNW',
{234}'CZCLLWJQJJJKDGJZ' + 'OLBBZPPGLGHTGZXY' + 'GHZMYCNQSYCYHBHG' +
{234}'XKAMTXYXNBSKYZZG' + 'JZLQJDFCJXDYGJQJ' + 'JPMGWGJJJPKQSB',
{235}'GBMMCJSSCLPQPDXC' + 'DYYKYWCJDDYYGYWR' + 'HJRTGZNYQLDKLJSZ' +
{235}'ZGZQZJGDYKSHPZMT' + 'LCPWNJAFYZDJCNMW' + 'ESCYGLBTZCGMSS',
{236}'LLYXQSXSBSJSBBGG' + 'GHFJLYPMZJNLYYWD' + 'QSHZXTYYWHMCYHYW' +
{236}'DBXBTLMSYYYFSXJC' + 'SDXXLHJHF SXZQHF' + 'ZMZCZTQCXZXRTT',
{237}'DJHNNYZQQMNQDMMG' + 'LYDXMJGDHCDYZBFF' + 'ALLZTDLTFXMXQZDN' +
{237}'GWQDBDCZJDXBZGSQ' + 'QDDJCMBKZFFXMKDM' + 'DSYYSZCMLJDSYN',
{238}'SPRSKMKMPCKLGDBQ' + 'TFZSWTFGGLYPLLJZ' + 'HGJJGYPZLTCSMCNB' +
{238}'TJBQFKTHBYZGKPBB' + 'YMTDSSXTBNPDKLEY' + 'CJNYCDYKZDDHQH',
{239}'SDZSCTARLLTKZLGE' + 'CLLKJLQJAQNBDKKG' + 'HPJTZQKSECSHALQF' +
{239}'MMGJNLYJBBTMLYZX' + 'DCJPLDLPCQDHZYCB' + 'ZSCZBZMSLJFLKR',
{240}'ZJSNFRGJHXPDHYJY' + 'BZGDLJCSEZGXLBLH' + 'YXTWMABCHECMWYJY' +
{240}'ZLLJJYHLGBDJLSLY' + 'GKDZPZXJYYZLWCXS' + 'ZFGWYYDLYHCLJS',
{241}'CMBJHBLYZLYCBLYD' + 'PDQYSXQZBYTDKYYJ' + 'YYCNRJMPDJGKLCLJ' +
{241}'BCTBJDDBBLBLCZQR' + 'PPXJCGLZCSHLTOLJ' + 'NMDDDLNGKAQHQH',
{242}'JHYKHEZNMSHRP QQ' + 'JCHGMFPRXHJGDYCH' + 'GHLYRZQLCYQJNZSQ' +
{242}'TKQJYMSZSWLCFQQQ' + 'XYFGGYPTQWLMCRNF' + 'KKFSYYLQBMQAMM',
{243}'MYXCTPSHCPTXXZZS' + 'MPHPSHMCLMLDQFYQ' + 'XSZYJDJJZZHQPDSZ' +
{243}'GLSTJBCKBXYQZJSG' + 'PSXQZQZRQTBDKYXZ' + 'KHHGFLBCSMDLDG',
{244}'DZDBLZYYCXNNCSYB' + 'ZBFGLZZXSWMSCCMQ' + 'NJQSBDQSJTXXMBLT' +
{244}'XZCLZSHZCXRQJGJY' + 'LXZFJPHYXZQQYDFQ' + 'JJLZZNZJCDGZYG',
{245}'CTXMZYSCTLKPHTXH' + 'TLBJXJLXSCDQXCBB' + 'TJFQZFSLTJBTKQBX' +
{245}'XJJLJCHCZDBZJDCZ' + 'JDCPRNPQCJPFCZLC' + 'LZXBDMXMPHJSGZ',
{246}'GSZZQLYLWTJPFSYA' + 'SMCJBTZYYCWMYTCS' + 'JJLQCQLWZMALBXYF' +
{246}'BPNLSFHTGJWEJJXX' + 'GLLJSTGSHJQLZFKC' + 'GNNDSZFDEQFHBS',
{247}'AQTGYLBXMMYGSZLD' + 'YDQMJJRGBJTKGDHG' + 'KBLQKBDMBYLXWCXY' +
{247}'TTYBKMRTJZXQJBHL' + 'MHMJJZMQASLDCYXY' + 'QDLQCAFYWYXQHZ'
);

function ChnPy(Value: array of char): Char;
begin
Result := #0;
case Byte(Value[0]) of
176:
case Byte(Value[1]) of
161..196: Result := 'A';
197..254: Result := 'B';
end; {case}
177:
Result := 'B';
178:
case Byte(Value[1]) of
161..192: Result := 'B';
193..205: Result := 'C';
206: Result := 'S'; //参
207..254: Result := 'C';
end; {case}
179:
Result := 'C';
180:
case Byte(Value[1]) of
161..237: Result := 'C';
238..254: Result := 'D';
end; {case}
181:
Result := 'D';
182:
case Byte(Value[1]) of
161..233: Result := 'D';
234..254: Result := 'E';
end; {case}
183:
case Byte(Value[1]) of
161: Result := 'E';
162..254: Result := 'F';
end; {case}
184:
case Byte(Value[1]) of
161..192: Result := 'F';
193..254: Result := 'G';
end; {case}
185:
case Byte(Value[1]) of
161..253: Result := 'G';
254: Result := 'H';
end; {case}
186:
Result := 'H';
187:
case Byte(Value[1]) of
161..246: Result := 'H';
247..254: Result := 'J';
end; {case}
188..190:
Result := 'J';
191:
case Byte(Value[1]) of
161..165: Result := 'J';
166..254: Result := 'K';
end; {case}
192:
case Byte(Value[1]) of
161..171: Result := 'K';
172..254: Result := 'L';
end; {case}
193:
Result := 'L';
194:
case Byte(Value[1]) of
161..231: Result := 'L';
232..254: Result := 'M';
end; {case}
195:
Result := 'M';
196:
case Byte(Value[1]) of
161..194: Result := 'M';
195..254: Result := 'N';
end; {case}
197:
case Byte(Value[1]) of
161..181: Result := 'N';
182..189: Result := 'O';
190..254: Result := 'P';
end; {case}
198:
case Byte(Value[1]) of
161..217: Result := 'P';
218..254: Result := 'Q';
end; {case}
199:
Result := 'Q';
200:
case Byte(Value[1]) of
161..186: Result := 'Q';
187..245: Result := 'R';
246..254: Result := 'S';
end; {case}
201..202:
Result := 'S';
203:
case Byte(Value[1]) of
161..249: Result := 'S';
250..254: Result := 'T';
end; {case}
204:
Result := 'T';
205:
case Byte(Value[1]) of
161..217: Result := 'T';
218..254: Result := 'W';
end; {case}
206:
case Byte(Value[1]) of
161..243: Result := 'W';
244..254: Result := 'X';
end; {case}
207..208:
Result := 'X';
209:
case Byte(Value[1]) of
161..184: Result := 'X';
185..254: Result := 'Y';
end; {case}
210..211:
Result := 'Y';
212:
case Byte(Value[1]) of
161..208: Result := 'Y';
209..254: Result := 'Z';
end; {case}
213..215:
Result := 'Z';
216..247:
Result := py[Byte(Value[0])][Byte(Value[1]) - 160];
end; {case}
end;

function TitemMag.ChnToPY(Value: string): string;
var
I, L: Integer;
C: array[0..1] of char;
R: Char;
begin
Result := '';
L := Length(Value);
I := 1;
while I <= (L - 1) do
begin
if Value[I] < #160 then
begin
Result := Result + Value[I];
Inc(I);
end
else
begin
C[0] := Value[I];
C[1] := Value[I + 1];
R := ChnPY(C);
if r <> #0 then
Result := Result + R;
Inc(I, 2);
end;
end;
if I = L then
Result := Result + Value[L];
end;

❿ 一些著名的软件都用什么语言编写

一、操作系统:

Microsoft Windows : 汇编 -> C -> C++

备注:曾经在智能手机的操作系统(Windows Mobile)考虑掺点C#写的程序,比如软键盘,结果因为写出来的程序太慢,实在无法和别的模块合并,最终又回到C++重写。

相信很多朋友都知道Windows Vista,这个系统开发早期比尔盖茨想全部用C#写,但是最终因为执行慢而放弃,结果之前无数软件工程师日夜劳作成果一夜之间被宣告作废。

Linux :C

Apple MacOS : 主要为C,部分为C++。 备注: 之前用的语言比较杂,最早是汇编和Pascal。

Sun Solaris : C

HP-UX : C

Symbian OS : 汇编,主要为C++。 (诺基亚手机)

Google Android :2008 年推出: C语言(有传言说是用Java开发的操作系统,但最近刚推出原生的C语言SDK)

RIM BlackBerry OS 4.x : 黑莓 C++



二、图形界面层

Microsoft Windows UI : C++

Apple MacOS UI (Aqua) : C++

Gnome (Linux图形界面之一,大脚): C和C++, 主要是C。

KDE (Linux图形界面) ,C++。



三、桌面搜索工具

Google Desktop Search : C++

Microsoft Windows Desktop Search : C++

Beagle (Linux/Windows/UNIX 下): C# (基于开源的 .net : Mono)



四、办公软件

Microsoft Office : 在 汇编 -> C -> 稳定在C++

Sun Open Office : 部分JAVA(对外接口),主要为C++ (开源,可下载其源代码)

Corel Office/WordPerfect Office : 1996年尝试过Java,次年被抛弃,重新回到C/C++

Adobe Systems Acrobat Reader/Distiller : C++



五、关系型数据库

Oracle : 汇编、C、C++、Java。主要为C++。

MySQL : C++

IBM DB2 : 汇编、C、C++,主要为C。

Microsoft SQL Server : 汇编 -> C->C++

IBM Informix : 汇编、C、C++,主要为C。

SAP DB/MaxDB : C++



六、Web Browsers/浏览器

Microsoft Internet Explorer : C++

Mozilla Firefox : C++

Netscape Navigator : The code of Netscape browser was written in C, and Netscape engineers, all bought to Java (see M. Cusumano book and article) redeveloped the browser using Java. It was too slow and abandoned. Mozilla, the next version, was later developed using C++.

Safari : (2003年1月发布)C++

Google Chrome : (2008的发布)C++

Sun HotJava : Java (死于1999年)

Opera : C++ (手机上占用率比较大)

Opera Mini : Opera Mini (2007) has a very funny architecture, and is indeed using both C++ and Java. The browser is split in two parts, an ultra thin (less than 100Kb) "viewer" client part and a server side responsible of rendering. The first uses Java and receives the page under the OBML format, the latter reuses classical Opera (C++) rendering engine plus Opera's Small Screen Rendering, on the server. This allows Opera to penetrate various J2ME-enabled portable devices, such as phones, while preserving excellent response time. This comes obviously with a few sacrifices, for instance on JavaScript execution.

Mosaic : 鼻祖(已死) C 语言



七、邮件客户端

Microsoft Outlook : C++

IBM Lotus Notes : Java

Foxmail : Delphi



八、软件开发集成环境/IDE:

Microsoft Visual Studio : C++

Eclipse : Java (其图形界面SWT基于C/C++)

Code::Blocks : C++

易语言: C++

火山中文: C++

火山移动: C++



九、虚拟机

Microsoft .Net CLR (.NET的虚拟机): C++

Java Virtual Machine (JVM) : Java 虚拟机:C++



十、ERP软件 (企业应用)

SAP mySAP ERP : C,后主要为“ABAP/4”语言

Oracle Peoplesoft : C++ -> Java

Oracle E-Business Suite : Java



十一、商业智能(Business Intelligence )

Business Objects : C++



十二、图形处理

Adobe Photoshop : C++

The GIMP : C



十三、搜索引擎

Google : 汇编 与 C++,主要为C++



十四、著名网站

eBay : 2002年为C++,后主要迁至Java

facebook : C++ 和 PHP

This line is only about facebook, not its plugins. Plugins can be developed in many different technologies, thanks to facebook's ORB/application server, Thrift. Thrift contains a compiler coded in C++. facebook people write about Thrift: "The multi-language code generation is well suited for search because it allows for application development in an efficient server side language (C++) and allows the Facebook PHP-based web application to make calls to the search service using Thrift PHP libraries." Aside the use of C++, facebook has adopted a LAMP architecture.

阿里巴巴和淘宝: php->C++/Java(主要用)



十五、 游戏 :

汇编、C、C++

星际争霸、魔兽争霸、CS、帝国时代、跑跑卡丁车、传奇、魔兽世界.... 数不胜数了,自己数吧

都是用C++开发的,C++语言靠近系统地称,执行速度最快。比如你的两个朋友与你分别玩用VB、Java、与C++编写的“跑跑卡丁车”,你玩C++编写的 游戏 已经跑玩结束了,发现你的两个朋友还没开始跑呢,那是相当的卡啊,



十六、编译器

Microsoft Visual C++ 编译器: C++

Microsoft Visual Basic 解释、编译器: C++

Microsoft Visual C# : 编译器: C++

gcc (GNU C compiler) : C

javac (Sun Java compiler) : Java

Perl : C++

PHP : C



十七、3D 引擎

Microsoft DirectX : C++

OpenGL : C

OGRE 3D : C++



十八、Web Servers (网页服务)

Apache : C和C++,主要为C

Microsoft IIS : C++

Tomcat: Java

Jboss: Java



十九:邮件服务

Microsoft Exchange Server : C->C++

Postfix : C

hMailServer : C++

Apache James : Java



二十:CD/DVD 刻录

Nero Burning ROM : C++

K3B : C++



二十一:媒体播放器

Nullsoft Winamp : C++

Microsoft Windows Media Player : C++

Microsoft Windows Media Player : C++



二十二:Peer to Peer (P2P软件)

eMule : C++

μtorrent : C++

Azureus : Java (图形界面使用基于C/C++的SWT,类Eclipse)



二十三:全球定位系统(GPS)

TomTom : C++

Hertz NeverLost : C++

Garmin : C++

Motorola VIAMOTO : 2007年6月,停止服务。 Java。



二十四:3D 引擎

Microsoft DirectX : C++(相信玩 游戏 的同学都知道这个,现在最高版本是DX11)

OpenGL : C

OGRE 3D : C++


二十五:服务器软件

Apache: C

Nginx: C

IIS: C


二十六:其他相关

OpenStack: Python

综述

著名的软件一般是系统软件,软件一般都分为系统软件和应用软件。开发软件分为一次开发和二次开发,比如开发操作系统(系统软件),就是一次开发;在操作基础上进行应用软件的开发,比如开发 游戏 ,就是二次开发。


一次开发的系统软件,要直接调用硬件资源,必须使用简单、直接的底层语言和中层语言,比如汇编和C语言;二次开发应用软件等,因为应用软件的类别比较多的,针对的情况比较复杂和具体,因此可以选择的语言很多,比如,大数据人工智能方面的有Python;安卓手机APP就是Java等等。

这里还有一个误区,其实语言不重要,每种语言都差不多,重要的是开发环境和编程思想。要学习编程开发,学的不是语言,而是对于开发环境工具的使用和编程思维的锤炼。很多著名的软件都是用C等底层语言编写的,但是也可以用其他语言编写,不过很少学C了,其中有商业的原因。(后面会解释)

集成开发环境软件

计算机语言是不可以单独拿出来说的,比如我们说C语言,指的是C语言编译器,而Python语言,指的是Python解释器。而编译器和解释器却都是用C语言编写,是不是很意外,所以著名的软件一般都是系统软件,使用的是C语言,一个语言就要初中水平就可以学会了,但必须了解IDE开发环境。


要使用计算机语言,就必须安装编译器,或者是解释器,程序员是在TXT文本上编写语言的,用编译器可以一次性编译为可执行文件exe,用解释器则可以逐条翻译成机器语言并逐条执行。编译器速度快,解释器可以跨系统,到了别的系统,不需要程序员改写程序,换一个解释器就行了。

IDE集成开发环境具备图形操作界面、编译器、调制器、控制台,是非常重要的开发工具的,只会一个计算机的语言语法,却不会使用IDE,基本上是没用的!

编程思想

很多著名的软件都是使用C等底层语言编写的,而且所用的都是编译器。当然还有另外一个原因,就是编程思想,C语言是面向过程,Python是面向对象。很明显,一次开发的系统软件肯定是面向过程的,而面向具体使用场景的应用软件肯定是面向对象的。


高手可以自由使用编程思想、程序编写时,交替使用各种语言、切换解释器或者编译器,达到隐藏核心代码目的;又或者软件的核心模块采用C等底层代码,保证软件的运行速度。毕竟开发时都是模块化的,不同模块使用不同的方法都是可以的!

所以很多著名的软件,往往是混合着各种语言,核心部分是C,其他部分则根据不同的情况选用不同语言,之所以会这样做,是因为使用C开发软件要耗费大量的时间太。摩尔定律推动硬件发展,软件开发也受到影响,一个软件晚几天推出市场,效果完全不同,所以程序员经常加班赶工,速度才是最重要的。

总结

如上所述,著名的软件是使用C等底层语言、编译器语言、面向过程的语言编写的,更多的是在一个软件的核心部分使用C等底层语言、编译器语言、面向过程的语言,其他则见机行事。

现在主流的语言是java、python和go

阅读全文

与delphiword源代码相关的资料

热点内容
类似安全文件的软件 浏览:723
为什么编程要学这门语言 浏览:678
网卡的配置文件目录 浏览:960
计算器单片机编程叫什么 浏览:736
网站编辑需要会什么 浏览:622
单片机程序计数器的功能 浏览:917
网络摄像头怎么接虚拟储存器 浏览:84
好压IMG压缩文件转换成光盘 浏览:588
前端json格式如何排序 浏览:821
ocx实现选择保存文件 浏览:986
office2007教程免费下载 浏览:489
pop编程是什么 浏览:760
三星升级系统联接失败 浏览:929
微信忘记独立密码 浏览:555
spike如何编程 浏览:503
javajlabel位置 浏览:728
如何用大数据做企业 浏览:656
复合编程用什么软件最好 浏览:505
txt转换word 浏览:797
java字面值的存储 浏览:261

友情链接