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

          對于給定的一個文件名,怎么知道它所代表磁盤文件的確是文本文件?這里有一個很簡單的方法:把給定的那個文件看作是無類型的二進制文件,然后順序地讀出這個文件的每一個字節,如果文件里有一個字節的值等于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】中文站 閱讀(845) 評論(0)  編輯  收藏 所屬分類: Delphi Kylix

          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          統計

          常用鏈接

          留言簿(8)

          隨筆分類(40)

          隨筆檔案(40)

          文章分類(33)

          文章檔案(34)

          相冊

          BLOG 聯盟

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 浦城县| 会昌县| 南岸区| 清苑县| 敦化市| 邵阳县| 塔河县| 五原县| 泰来县| 石门县| 聂拉木县| 夏邑县| 永吉县| 阜平县| 高邮市| 贵南县| 东乌珠穆沁旗| 新宁县| 波密县| 瑞丽市| 黑河市| 潢川县| 蒙阴县| 通渭县| 喜德县| 张掖市| 关岭| 迭部县| 寻甸| 临洮县| 宁武县| 雷山县| 马龙县| 佛学| 临潭县| 松阳县| 酒泉市| 土默特右旗| 苗栗县| 湛江市| 宁河县|