• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Khan's Notebook GCC/GNU/Linux Delphi/Window Java/Anywhere

            路漫漫,長修遠,我們不能沒有錢
            隨筆 - 173, 文章 - 0, 評論 - 257, 引用 - 0
            數據加載中……

            今天突然想寫一個關于日志文件的class,用pascal,以前用java幾簡單,pascal的這塊反而沒有接觸過

            delphi 日志 class

            文本文件是由若干行組成的,若干個字符串組成一行,一行的結尾由回車換行符表示。如果對文本文件進行操作,則首先應通過調用AssignFile過 程建立文件變量與外部文件的聯系,并且使用Reset或ReWrite或Append方法打開。由于文本文件是以行為單位進行讀寫操作的,并且每一行的長 度不一定相同,所以不能計算出指定行在文件中的準確位置,因此對于文件只能順序的讀寫。要對文件進行讀寫操作,必須相應的對文件進行以讀或寫的方式打開, 也就是對一個文本文件只能單獨進行讀或寫的操作,而不能同時進行。

            1、 以添加方式打開文件(Append)

            通過調用函數Append可打開一個已經存在的文件以便在文件末尾添加文本。如果在文件最后的128個字節塊中,存在字符〈ctrl〉+〈z〉(ASCII26),那么文件將在字節處插入,并且覆蓋該字符。

            Append過程的聲明如下:
            procedure Append(var F:text);

            其 中F是一個任意文件類型的變量,并且必須同用AssignFile函數打開的外部文件相聯系,如果指定的文件不存在,則會產生錯誤,如果指定的文件已經打 開,則先關閉再重新打開。當前文件的位置設置在文件末尾。如果分配給F的是一個空名字,則在調用Append函數后,文件變量(F)將同將同標準輸出文件 建立聯系。


            2 、文本文件的讀取和寫入

            文本文件通過調用過程Reset后以只讀方式打開后,就可以使用Read或Readln過程來讀取文件數據了。文本文件通過調用Write或Writeln過程來打開一文件后就可以使用或過程來寫入數據。

            (1) 用Read過程讀取數據

            通過調用Read過程可以從文本文件中讀取或數字。其聲明如下:
            Procedure Read([var F:text;]v1 [,v2,…,vn,]);

            其 中F是一個文件變量,v1 ,v2,…,vn用于存儲讀取的數據,其必須為相同的類型。當v1 ,v2,…,vn定義為字符串型或字符型變量時,則Read過程將按照定義的長度讀取字符。當v1 ,v2,…,vn定義為整數或實數變量時,則Read過程將以空格作為分隔符,如果在數字中出現逗號、分號或其他字符將產生異常。

            (2) 用Readln過程讀取數據

            通過調用Readln 過程可以從文本文件中讀取字符串、字符或數字,直到一行結束。其聲明如下:
            Procedure readln([var F:text;]v1 [,v2 ,…]);

            其中F是一個文件變量,v1 ,v2,…,vn用于存儲讀取的數據

            (3) 用Write過程寫入數據

            通過調用Write過程可以向文件中寫入數據。其聲明如下:
            Procedure Write([var F:text;]p1[,p2,…]);

            其中F是一個文件變量,p1 ,p2,…,pn用于存儲寫入的數據


            (4) Writeln用過程寫入數據

            通過調用Writeln過程可以向文件中寫入一行數據,并在結尾處輸入回車符。聲明如下:
            Procedure Writeln([var F:text;]P1[,P2,…]):


            3、 文件的基本操作

            對文本文件進行操作的基本函數與過程見表:

            方法                                                                                  說明
            Procedure AssignPrn(var F:text);                                       建立文本文件同打印機的聯系 
            Function Eoln(var F:text):Boolean;                                    檢測文件指針是否指向行尾 
            Procedure Flush(var F:text);                                             清空以輸出方式(ReWite或Append)打開的文件緩沖區,以確保寫入的文件字符都被寫入外部文件 
            Function SeekEof(var F:text): boolean;                             返回文件尾狀態 
            Function SeekEoln(var F:text):boolean;                             返回文件行尾狀態 
            Procedure SetTextBuf(var F :text;var buf [;size:integer]);   設置文件緩沖區


            posted on 2004-11-08 21:27 Khan 閱讀(1315) 評論(1)  編輯 收藏 引用 所屬分類: Delphi

            評論

            # re: 今天突然想寫一個關于日志文件的class,用pascal,以前用java幾簡單,pascal的這塊反而沒有接觸過  回復  更多評論   

            源碼呢???
            2007-09-14 07:50 | han
            欧美亚洲国产精品久久| 久久久精品国产免大香伊 | 国产视频久久| 久久se精品一区精品二区| 久久成人永久免费播放| 久久99久久无码毛片一区二区| 色偷偷91久久综合噜噜噜噜| 久久人与动人物a级毛片| 久久久久高潮毛片免费全部播放| 日韩欧美亚洲综合久久影院d3| 久久午夜综合久久| 久久水蜜桃亚洲av无码精品麻豆 | 久久久久久狠狠丁香| 久久精品国产99久久香蕉| 国产69精品久久久久APP下载| 久久精品国产只有精品2020| 久久丫忘忧草产品| 国产精品久久久久久一区二区三区| 久久综合视频网站| 99久久精品国产综合一区| 久久久久亚洲AV成人网人人网站 | 99久久国产热无码精品免费久久久久 | av无码久久久久久不卡网站| 手机看片久久高清国产日韩| 91精品国产综合久久久久久| 久久综合亚洲色一区二区三区 | 久久久久久毛片免费看| 久久国产精品77777| 亚洲国产精品无码久久一区二区| 国产精品永久久久久久久久久| 国产精品欧美久久久天天影视| 久久永久免费人妻精品下载| 伊人久久五月天| 怡红院日本一道日本久久| 亚洲精品无码久久毛片| 99久久精品国产麻豆| 欧洲精品久久久av无码电影| 亚洲国产精品久久电影欧美| 伊人久久大香线蕉综合Av| 亚洲精品无码久久久久| 日日噜噜夜夜狠狠久久丁香五月 |