掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ファイルがアスキーかどうかしらべるには (ID:7744)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Perlでは、ファイルを読み込み 先頭付近(リファレンスには1ブロックと書いてありますが…)をしらべ、30%以上がテキストではない文字(コントロールコードやNULLなど)ならば、バイナリファイルと判断するそうです。 これだけだと、かなりの確率で日本語の書かれたテキストファイルもバイナリファイルと見なされるかもと書いてあります(JPerlでは対処されてるそうですが、JPerlはしらないのでわかりません)。 実際には、 ・NULLが入っていても問題としない(コードによってはNULLが入っているので) ・ByteType関数でLeadBytesと判断された文字はカウントしない などすれば、精度は上がるでしょう。 もっといい方法があるかもしれませんが(-_-;) Delphiでこれをするには、TFileStreamなどで読み込み、一個ずつバイトを調べていくと良さそうです。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.