Първо вижте UTF-8 до края за всички неща, които трябва да направите правилно, за да накарате не-ASCII символите да работят в приложението ви като цяло.
Второ, това е… трудно… да се обслужват файлове с имена, различни от ASCII, в мрежата. 1) Трябва да сте сигурни, че кодирате всички URL адреси за тези файлове с процентно кодиране, както изглежда вече правите. 2) Уеб сървърът ще вземе този URL адрес, ще го декодира процентно до низ от байтове и след това ще поиска от основната операционна/файлова система да потърси файл с име с този низ. Това е трудната част:няма да знаете точно какъв байтов низ използва вашата операционна система/файлова система, за да представи точно този файл. Първо ще трябва да разберете това, след което да кодирате конкретно URL адреса, така че да се декодира точно до правилния низ.
И когато преминете към друг сървър, особено ако преминавате от Windows към *NIX или обратното, можете да направите това отново, тъй като тези системи правят нещата много по-различно.
Накратко, често е повече караница, отколкото си струва, и трябва да съхранявате изображенията си с имена само с ASCII, за да избегнете всичко това. Конкретно за държави би било много логично да се използват двубуквените кодове на държави за името на изображението (напр. „cz.jpg“).