#!/usr/bin/perl

use Jcode;
$correct_default = 'utf8';  # 'utf8' or 'euc' or 'sjis' or 'jis'

if ($#ARGV < 2){
    die "Usage: kanjichecker.pl [utf8|euc|sjis|jis] dir path_to_file\n";
}

$current = $ARGV[0] || $current_default;
$dir     = $ARGV[1];
$file    = $ARGV[2];

# if file was removed already, check isn't need.
unless (-f $file) {
    exit 0;
}

open(FILE, "<$file")
    || die "$file: cannot open for reading.";

$count = 0;
while (<FILE>) {
    $count++;
    undef $code;
    $code = &Jcode::getcode(\$_);
    if ($code eq 'binary') {
        exit 0;
    } elsif (! $code ) {
        next;
    } elsif ($code eq $current) {
        next;
    } else {
        next if ($count == 1 && $_ =~ /^\x89PNG/); # for PNG format image files.
        die "$file include $code, current code is $current.\n";
    }
}

exit 0;
