黄色在线观看视频-黄色在线免费看-黄色在线视频免费-黄色在线视频免费看-免费啪啪网-免费啪啪网站

首頁(yè) 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級(jí) | 職稱英語(yǔ) | 商務(wù)英語(yǔ) | 公共英語(yǔ) | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語(yǔ) | 成人英語(yǔ)三級(jí) | 申碩英語(yǔ) | 攻碩英語(yǔ) | 職稱日語(yǔ) | 日語(yǔ)學(xué)習(xí) | 法語(yǔ) | 德語(yǔ) | 韓語(yǔ)
計(jì)算機(jī)等級(jí)考試 | 軟件水平考試 | 職稱計(jì)算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報(bào)關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問(wèn) | 導(dǎo)游資格
報(bào)檢員 | 教師資格 | 社會(huì)工作者 | 外銷員 | 國(guó)際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價(jià)格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格考試會(huì)計(jì)證) | 經(jīng)濟(jì)師 | 會(huì)計(jì)職稱 | 注冊(cè)會(huì)計(jì)師 | 審計(jì)師 | 注冊(cè)稅務(wù)師
注冊(cè)資產(chǎn)評(píng)估師 | 高級(jí)會(huì)計(jì)師 | ACCA | 統(tǒng)計(jì)師 | 精算師 | 理財(cái)規(guī)劃師 | 國(guó)際內(nèi)審師
一級(jí)建造師 | 二級(jí)建造師 | 造價(jià)工程師 | 造價(jià)員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評(píng)價(jià)師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價(jià)師 | 安全評(píng)價(jià)師 | 電氣工程師 | 注冊(cè)測(cè)繪師 | 注冊(cè)計(jì)量師
繽紛校園 | 實(shí)用文檔 | 英語(yǔ)學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

2011年計(jì)算機(jī)等級(jí)考試Delphi講義:文件管理

本章首先介紹Delphi文件管理的基本概念和標(biāo)準(zhǔn)過(guò)程/函數(shù),并提供了一個(gè)記錄文件的應(yīng)用實(shí)例,這是從我們實(shí)際課題開(kāi)發(fā)中提取出來(lái)的。而后介紹Delphi提供的文件控件的使用方法。最后提供的一個(gè)綜合例程MDI文件管理器則是對(duì)Delphi文件管理功能的綜合應(yīng)用。

  6.2 記錄文件的應(yīng)用

  6.2.1 任務(wù)介紹

  在這一節(jié),我們開(kāi)發(fā)一個(gè)系統(tǒng)安全性綜合評(píng)估方法管理系統(tǒng)。系統(tǒng)安全性在復(fù)雜項(xiàng)目開(kāi)發(fā)中十分重要,但由于牽涉面廣因而很難獲得客觀、全面的評(píng)估值。鑒于此我們提出多角度、多側(cè)面評(píng)估而后定量集成的思路,并在此基礎(chǔ)上提出了多種安全性綜合評(píng)估方法。每種方法由不同部門進(jìn)行評(píng)估而后把結(jié)果匯總、綜合。

  為此我們定義如下的記錄類型:

  type

  TNature = (Micro,Macro);

  {方法性質(zhì),分為微觀和宏觀兩類}

  TMethod = Record

  Name: string[20]; {方法名}

  Condition: string[40]; {方法適用條件}

  Nature: TNature; {方法性質(zhì)}

  Result: Real; {方法評(píng)估值}

  end;

  用來(lái)記錄不同方法的信息。

  由于不同方法的條件、性質(zhì)不同,因而對(duì)工程開(kāi)發(fā)的不同階段適用方法集也不同。因此需要根據(jù)實(shí)際情況對(duì)方法集進(jìn)行管理。我們把每一方法作為一條記錄,每一方法集作為一個(gè)記錄文件。下面討論系統(tǒng)的實(shí)現(xiàn)方法。

  6.2.2 設(shè)計(jì)基本思路

  本系統(tǒng)要實(shí)現(xiàn)的基本功能是文件的打開(kāi)、創(chuàng)建、關(guān)閉、顯示,記錄的增加、修改、刪除以及結(jié)果的綜合和顯示。為此我們使用了兩組按鈕分別用于文件和記錄的操作, 使用一個(gè)StringGrid控件來(lái)顯示文件內(nèi)容,使用一個(gè)只讀編輯框顯示結(jié)果的綜合。

  其中各部件的名稱、功能如下表所示:

  表6.1 主窗口部件的設(shè)計(jì)

  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  部件名稱 主要屬性 備注

  ──────────────────────────────────────

  RecFileForm BorderStyle=bsDialog 文件打開(kāi)后把文件名附到窗口標(biāo)題后

  Position=poScreenCenter

  StringGrid1 大小行數(shù)動(dòng)態(tài)確定

  HazAttr(編輯框) ReadOnly=True 顯示綜合結(jié)果

  OpenButton TabOrder=0 打開(kāi)一個(gè)記錄文件,若文件不存在則創(chuàng)建

  NewButton Caption='打開(kāi)' 創(chuàng)建一個(gè)記錄文件,若文件存在則打開(kāi)

  CloseButton Caption='關(guān)閉' 關(guān)閉一個(gè)已打開(kāi)的文件

  AddButton Caption='增加' 增加一條記錄

  ModifyButton Caption='修改' 修改一條記錄

  DeleteButton Caption='刪除' 刪除一條記錄

  CalcuButton Caption='計(jì)算' 計(jì)算最終結(jié)果并顯示

  ExitButton Caption='退出' 系統(tǒng)終止。若當(dāng)前有打開(kāi)的文件則先關(guān)閉

  OpenDialog1 Filter= 選擇或輸入欲打開(kāi)的文件

  'Record File(*.Rec)|.Rec

  |Any File(*.*)|*.*'

  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  另外,StringGrid1、HazAttr的標(biāo)題用兩個(gè)標(biāo)簽框(Label)來(lái)顯示。

  另外我們還需要一個(gè)編輯對(duì)話框。其中四個(gè)編輯框Name、Condition、Nature、 Result分別對(duì)應(yīng)TMethod記錄的四個(gè)域。

  為協(xié)調(diào)程序運(yùn)行,我們定義了一組全局變量。各變量的類型、作用如下表。

  表6.2 全局變量及其作用

  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  變量名 類型 作用

  ─────────────────────────────────

  MethodFile MethodFileType 與當(dāng)前打開(kāi)文件相關(guān)聯(lián)的文件變量

  FileName string[70] 當(dāng)前打開(kāi)文件的文件名

  Count Count 當(dāng)前打開(kāi)文件的記錄總數(shù)

  CurrentRec Integer 當(dāng)前處理記錄號(hào)

  FileOpened Boolean 當(dāng)前是否有文件打開(kāi)

  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  記錄文件類型MethodFileType的定義為

  type

  MethodFileType = file of TMethod;

  布爾變量FileOpened用于控制文件按鈕的使能、變灰,記錄按鈕的反應(yīng)以及系統(tǒng)結(jié)束時(shí)是否需要首先關(guān)閉文件。

  6.2.3 記錄文件的打開(kāi)和創(chuàng)建

  記錄文件的打開(kāi)和創(chuàng)建同文本文件一樣也需要關(guān)聯(lián)和初始化兩個(gè)步驟。同文本文件唯一的不同是不能使用Append過(guò)程。

  記錄文件缺省情況下以讀寫方式打開(kāi),如果想以只讀或只寫方式打開(kāi),則需要修改System單元中定義的變量FileMode的值。

  FileMode的取值和意義如下表。

  表6.3 FileMode的取值和意義

  ━━━━━━━━━━━━━━

  取值 意義

  ──────────────

  0 只讀

  1 只寫

  2 讀寫

  ━━━━━━━━━━━━━━

  FileMode是一個(gè)全局變量,對(duì)它的每次修改都將影響所有Reset的操作,因此在打開(kāi)自己的文件后應(yīng)還原它的值。

  在本系統(tǒng)中,當(dāng)用戶按下“打開(kāi)”按鈕時(shí),首先彈出一個(gè)標(biāo)準(zhǔn)文件打開(kāi)對(duì)話框,要求用戶輸入或選擇文件名。確認(rèn)后如果該文件名的文件存在,則用Reset打開(kāi),若不存在則創(chuàng)建。程序清單如下。

  procedure TRecFileForm.OpenButtonClick(Sender: TObject);

  begin

  if OpenDialog1.Execute then

  FileName := OpenDialog1.FileName

  else

  exit;

  AssignFile(MethodFile,Filename);

  try

  Reset(MethodFile);

  FileOpened := True;

  except

  On EInOutError do

  begin

  try

  if FileExists(FileName) = False then

  begin

  ReWrite(MethodFile);

  FileOpened := True;

  end

  else

  begin

  FileOpened := False;

  MessageDlg('文件不能打開(kāi)',mtWarning,[mbOK],0);

  end;

  except

  On EInOutError do

  begin

  FileOpened := False;

  MessageDlg('文件不能創(chuàng)建',mtWarning,[mbOK],0);

  end;

  end;

  end;

  end;

  if FileOpened = False then exit;

  Count := FileSize(MethodFile);

  if Count>0 then

  ChangeGrid;

  RecFileForm.Caption := FormCaption+' -- '+FileName;

  NewButton.Enabled := False;

  OpenButton.Enabled := False;

  CloseButton.Enabled := True;

  end;

  首先系統(tǒng)試圖用Reset打開(kāi)一個(gè)文件,并置FileOpened為True。如果文件不能打開(kāi),則引發(fā)一個(gè)I/O異常。在異常處理過(guò)程中,首先檢測(cè)文件是否存在。若不存在則創(chuàng)建這個(gè)文件。否則是其它原因引發(fā)的異常,則把FileOpend重置為False, 并顯示信息“文件不能打開(kāi)”。在文件創(chuàng)建過(guò)程中仍可能引發(fā)異常,因而在一個(gè)嵌套的異常處理中把FileOpened重置為False,并提示信息“文件不能創(chuàng)建”。

  有關(guān)異常處理的內(nèi)容請(qǐng)讀者參看第十二章。這段程序說(shuō)明:異常處理機(jī)制不僅能使我們的程序更健壯,而且為編程提供了靈活性。

  當(dāng)用戶按下“創(chuàng)建”按鈕時(shí),系統(tǒng)首先彈出一個(gè)標(biāo)準(zhǔn)輸入框,要求用戶輸入文件名,確認(rèn)后系統(tǒng)首先檢測(cè)文件是否存在。若存在則直接打開(kāi),否則創(chuàng)建一個(gè)新文件。打開(kāi)或創(chuàng)建過(guò)程導(dǎo)致異常,則重置FileName和FileOpened兩個(gè)全局變量。

  procedure TRecFileForm.NewButtonClick(Sender: TObject);

  begin

  FileName := InputBox('輸入框','請(qǐng)輸入文件名','');

  if FileName = '' then Exit;

  try

  AssignFile(MethodFile,FileName);

  if FileExists(FileName) then

  begin

  Reset(MethodFile);

  Count := FileSize(MethodFile);

  if Count>0 then

  ChangeGrid;

  end

  else

  begin

  Rewrite(MethodFile);

  count := 0;

  end;

  FileOpened := true;

  Except

  on EInOutError do

  begin

  FileName := '';

  FileOpened := False;

  end;

  end;

  if FileOpened then

  begin

  NewButton.Enabled := False;

  OpenButton.Enabled := False;

  CloseButton.Enabled := True;

  RecFileForm.Caption := FormCaption+' -- '+FileName;

  end;

  end;

上一頁(yè)  1 2 3 4 5 6 7 8 9 下一頁(yè)
  相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試試題及答案解析專題
       預(yù)告:名師解析2010年9月計(jì)算機(jī)等級(jí)考試試題答案
       2010年9月計(jì)算機(jī)等級(jí)考試成績(jī)查詢時(shí)間及入口
       2010年9月計(jì)算機(jī)等考成績(jī)查詢短信免費(fèi)提醒開(kāi)通
文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。
主站蜘蛛池模板: 色天使色婷婷在线影院亚洲 | 亚洲成a v人片在线看片 | 久久国产亚洲观看 | 国产精品成人h视频 | 老司机免费福利午夜入口ae58 | 久青草免费在线视频 | 揄拍自拍日韩精品 | 日韩在线视频一区 | 国产 日韩 欧美 在线 | 在线观看国产精品一区 | 欧美资源网| 国产福利在线观看 | heisi视频网在线观看 | 中文字幕在线观看你懂的 | 三级网站| 免费高清a级毛片在线播放 免费高清欧美一区二区视频 | 国产中的精品一区的 | 日韩美女免费线视频网址 | 一级黄色性生活视频 | 韩国伦理片在线观看 | 国产精品1区2区 | 国产欧美亚洲另类第一页 | 日韩一级片免费看 | 亚洲激情小视频 | 你懂的在线观看网站 | 亚洲经典千人经典日产 | 亚洲第一色网站 | 免费国产a国产片高清不卡 免费国产a | 日本人与物videos另类 | 久久青草视频 | 免费女上男下xx00xx动态图 | 一个人看的视频在线www高清 | 亚洲精品一二三四 | 五月综合色 | 久久久青青 | 亚洲欧美色图 | 日本综合在线 | 丝袜美女足淫美足美脚网站 | 在线午夜视频 | 国产伊人网| 亚洲第一免费 |