知识大全 文件管理(一)[2]
Posted 文件
篇首语:欠伸展肢体,吟咏心自愉。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 文件管理(一)[2]相关的知识,希望对你有一定的参考价值。
DELPHI基础教程:文件管理(一)[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
文件名操作
Rename :文件更名 以文件变量为操作对象
RenameFile :文件更名 参数为文件的原名和新名
ChangeFileExt :改变文件扩展名
ExpandFileName :返回文件全路径名
ExtractFileExt :返回文件扩展名
ExtractFileName :从全路径名中返回文件名
ExtractFilePath :返回特定文件的路径
文件属性
FileGetAttr :返回文件属性
FileSetAttr :设置文件属性
文件状态
FileSize :返回文件对象大小
IOResult :返回上一次I/O操作的状态
FileExists :检测文件是否存在
文件日期
DateTimeToFileDate :把Delphi日期格式转换为DOS日期格式
FileDateToDateTime :把DOS日期格式转换为Delphi日期格式
FileGetDate :返回文件的DOS日期时间戳
FileSetDate :设置文件的DOS日期时间戳
文件读写
Read Readln :从文本或记录文件中读取变量
Write :将指定变量写入文本或记录文件
Writeln :将指定变量写入文本文件并写入一个行结束标志
FileRead :从一个指定文件中读取变量
FileWrite :向指定文件写入数据
FileRead和FileWrite都是以文件句柄为操作对象 主要供系统内部使用
目录操作
MkDir :创建当前目录的子目录
ChDir :改变当前目录
GetDir :返回特定磁盘的当前目录
RmDir :删除一个空子目录
磁盘操作
DiskFree :返回磁盘自由空间
DiskSize :返回特定磁盘的大小
文件查找
FileSearch :查找目录中是否存在某一特定文件
FindFirst :在目录中查找与给定文件名(可以包含匹配符)及属性集相匹配的第一个文件
FindNext :返回符合条件的下一个文件
FindClose :中止一个FindFirst / FindNext序列
有关文件管理标准过程/函数的更详细资料 请查阅Delphi相关的Help主题 以上的大部分过程在后面都有应用实例 读者可以从中体会其用法
在Delphi的联机帮助Help系统中把有关文件的过程/函数分为两个主题 I/O Routine和File_Management Routine 前者大部分以文件变量为操作对象 而后者大部分以文件名或文件句柄为操作对象 这里为了方便读者的使用 我们按功能重新进行了分类 在下一节中主要应用I/O Routine主题下的过程 而在第四节的综合举例中主要应用File_Management Routine主题下的过程
另外 Windows提供了许多有关文件管理的API函数 虽然在一般情况下 利用Delphi提供的函数已足够解决问题 但有时候仍然需要使用Windows API 在( )中我们就用到了Windows API函数GetDriveType 有关Windows API函数的情况 请读者参阅相关的资料 这里不再进行介绍
记录文件的应用
任务介绍
在这一节 我们开发一个系统安全性综合评估方法管理系统 系统安全性在复杂项目开发中十分重要 但由于牵涉面广因而很难获得客观 全面的评估值 鉴于此我们提出多角度 多侧面评估而后定量集成的思路 并在此基础上提出了多种安全性综合评估方法 每种方法由不同部门进行评估而后把结果汇总 综合
为此我们定义如下的记录类型
type
TNature = (Micro Macro)
方法性质 分为微观和宏观两类
TMethod = Record
Name: string[ ]; 方法名
Condition: string[ ]; 方法适用条件
Nature: TNature; 方法性质
Result: Real; 方法评估值
end;
用来记录不同方法的信息
由于不同方法的条件 性质不同 因而对工程开发的不同阶段适用方法集也不同 因此需要根据实际情况对方法集进行管理 我们把每一方法作为一条记录 每一方法集作为一个记录文件 下面讨论系统的实现方法
设计基本思路
本系统要实现的基本功能是文件的打开 创建 关闭 显示 记录的增加 修改 删除以及结果的综合和显示 为此我们使用了两组按钮分别用于文件和记录的操作 使用一个StringGrid控件来显示文件内容 使用一个只读编辑框显示结果的综合
其中各部件的名称 功能如下表所示
表 主窗口部件的设计
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
部件名称 主要属性 备注
──────────────────────────────────────
RecFileForm BorderStyle=bsDialog 文件打开后把文件名附到窗口标题后
Position=poScreenCenter
StringGrid 大小行数动态确定
HazAttr(编辑框) ReadOnly=True 显示综合结果
OpenButton TabOrder= 打开一个记录文件 若文件不存在则创建
NewButton Caption= 打开 创建一个记录文件 若文件存在则打开
CloseButton Caption= 关闭 关闭一个已打开的文件
AddButton Caption= 增加 增加一条记录
ModifyButton Caption= 修改 修改一条记录
DeleteButton Caption= 删除 删除一条记录
CalcuButton Caption= 计算 计算最终结果并显示
ExitButton Caption= 退出 系统终止 若当前有打开的文件则先关闭
OpenDialog Filter= 选择或输入欲打开的文件
Record File(* Rec)| Rec
|Any File(* *)|* *
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
另外 StringGrid HazAttr的标题用两个标签框(Label)来显示
另外我们还需要一个编辑对话框 其中四个编辑框Name Condition Nature Result分别对应TMethod记录的四个域
为协调程序运行 我们定义了一组全局变量 各变量的类型 作用如下表
表 全局变量及其作用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
变量名 类型 作用
─────────────────────────────────
MethodFile MethodFileType 与当前打开文件相关联的文件变量
FileName string[ ] 当前打开文件的文件名
Count Count 当前打开文件的记录总数
CurrentRec Integer 当前处理记录号
FileOpened Boolean 当前是否有文件打开
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
记录文件类型MethodFileType的定义为
type
MethodFileType = file of TMethod;
布尔变量FileOpened用于控制文件按钮的使能 变灰 记录按钮的反应以及系统结束时是否需要首先关闭文件
cha138/Article/program/Delphi/201311/25241相关参考
DELPHI基础教程:文件管理(一)[4] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 增加一
DELPHI基础教程:文件管理(一)[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 记录文
DELPHI基础教程:文件管理(三)[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一致的
DELPHI基础教程:文件管理(二)[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 对话框
要进行此项授权操作需使用SYSDBA权限(或INTERNAL帐号)连入数据库且初始化参数REMOTE_LOGIN_PASSWORDFILE的设置必须为EXCLUSIVE具体操作步骤如下 创建相应
在Wndows资源管理器中,按住__键的同时,用鼠标将选定的文件拖放至同一驱动器的另一文件夹中,可以实现该文件的复
在Wndows资源管理器中,按住_____键的同时,用鼠标将选定的文件拖放至同一驱动器的另一文件夹中,可以实现该文件的复制。A、ShiftB、空格C、AltD、Ctrl答案:D解析:在同一个系统盘下,
知识大全 我需要一份正规的企业信用(合同)管理机构和专(兼)职信用(合同)管理人员任命文件,谁有啊,请帮帮忙
我需要一份正规的企业信用(合同)管理机构和专(兼)职信用(合同)管理人员任命文件,谁有啊,请帮帮忙提供一个任命书样本:人事任命书为适应新形势下公司经营发展需要,经公司管理层会议决议,决定对以下同志进行
本章简介 在数据处理方面特别是事务型的软件编制工作中都涉及到有关文件的知识有效地组织数据提供方便而又高效地利用数据 信息的方法是文件这一章所要讨论的内容尽管数据管理技术早已从文件系统发展到数据
近几个月来的工作是一个交易系统持续改进项目迭代发布周期大约为~周最近一次迭代是V版在礼拜三完成发布不幸的是第二天上午就被老大逮过去原来老大从生产中揪出了一个bug大致的问题如下 系统中有一个常用
使用EXCLUSIVE表示只有当前INSTANCE使用这个password文件而且允许有别的用户作为sysdba登录进系统里边而若选择了SHARED则表明不止一个实例使用这个密码文件伴随着一个很强