怎么判斷一個文件是不是文本類型文件?

          對于給定的一個文件名,怎么知道它所代表磁盤文件的確是文本文件?這里有一個很簡單的方法:把給定的那個文件看作是無類型的二進制文件,然后順序地讀出這個文件的每一個字節,如果文件里有一個字節的值等于0,那么這個文件就不是文本文件;反之,如果這個文件中沒有一個字節的值是0的話,就可以判定這個文件是文本文件了。這是原理,下面看看在Delphi 中怎樣編程來實現它--
          function IsTextFile(FileName:string):boolean;
          var
          ? Fs:TFileStream;
          ? i,size:integer;
          ? IsTextFile:boolean;
          ? ByteData:Byte;
          begin
          ? if FileExists(FileName) then
          ? begin
          ? ? Fs:=TFileStream.Create(FileName,fmOpenRead);
          ? ? IsTextFile:=true;
          ? ? i:=0;
          ? ? size:=Fs.Size;
          ? ? While (i<size) and IsTextFile do
          ? ? begin
          ? ? ? Fs.Read(ByteData,1);
          ? ? ? IsTextFile:=ByteData<>0;
          ? ? ? inc(i)
          ? ? end;
          ? ? Fs.Free;
          ? ? Result:=IsTextFile
          ? end
          ? else
          ? ? Result:=false
          end;

          ??

          posted on 2006-06-01 16:43 【Xine】中文站 閱讀(839) 評論(0)  編輯  收藏 所屬分類: Delphi Kylix

          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導航

          統計

          常用鏈接

          留言簿(8)

          隨筆分類(40)

          隨筆檔案(40)

          文章分類(33)

          文章檔案(34)

          相冊

          BLOG 聯盟

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 南汇区| 江孜县| 山东| 清原| 连城县| 丹江口市| 随州市| 本溪| 吴川市| 巴林右旗| 桦南县| 隆化县| 饶平县| 商河县| 嘉善县| 浦北县| 灌南县| 大兴区| 尉氏县| 昌吉市| 铜鼓县| 安新县| 电白县| SHOW| 镇江市| 芜湖县| 慈利县| 札达县| 申扎县| 盘锦市| 嘉定区| 宜丰县| 贵溪市| 崇明县| 新田县| 湖口县| 永泰县| 大城县| 中江县| 白水县| 贵阳市|