回答受付が終了しました

ID非公開

2021/6/11 13:52

33回答

あるファイルがあったときに

回答(3件)

0

見分け方なんてないよ。そもそもファイルには文字も数字も書かれていないもの。 ファイルは「フォーマットに従って値を読む」べきものです。何かを判断する必要などありません。

0

「普通の数字」の意味がわかりませんが、いわゆるinteger型などのバイナリのまま格納されているということでしょうか?あるいはEBCDICコードとか(さすがにそれは無視できるのかな)。 バイト単位でチェックして、16進で 0x30 ~ 0x39 の範囲だけで構成されていれば「文字で表現された数字」ということでいいのでは?

あと「符号やカンマも許す」なら構成する文字が増えますので、それも許可しないといけなくはなりますが、普通は「1桁目か最後の桁に符号」くらい考慮すればじゅうぶんではないですかね(カンマがあるものは数字じゃなく文字扱い)。