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

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

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

          導航

          統計

          常用鏈接

          留言簿(8)

          隨筆分類(40)

          隨筆檔案(40)

          文章分類(33)

          文章檔案(34)

          相冊

          BLOG 聯盟

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 宜昌市| 宣威市| 沭阳县| 读书| 延长县| 右玉县| 怀远县| 渭源县| 乌海市| 通州市| 河池市| 吉安市| 永川市| 栾川县| 临沂市| 吉林市| 长阳| 花垣县| 东海县| 阿图什市| 澄迈县| 安阳县| 屯门区| 黄石市| 玛多县| 崇阳县| 镇沅| 绥芬河市| 昭觉县| 朔州市| 黄浦区| 京山县| 碌曲县| 龙游县| 永登县| 尉犁县| 临沧市| 锦屏县| 息烽县| 双峰县| 淮安市|