Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I am looking for a tool that for given directory will find all files having particular character encoding (like UTF-8). Do you know such a tool?

EDIT: OS - Windows XP

share|improve this question
2  
There's no completely reliable way to detect any file's encoding in the first place. –  Ignacio Vazquez-Abrams Nov 9 '10 at 15:01
add comment

3 Answers

In general this is not possible - apart from the special case of UTF-8 text files with a Byte Order Mark. Since the name of the encoding is not stored in the text file the only way to tell, for example, CP437 from CP850 would be to make a guess based on a statistical analysis of the whole file, looking at frequency of certain character pairs etc.

Solaris users have auto_ef but, so far as I know, there isn't a Windows port.

Perl users have Encode::Guess

According to Wikipedia "The newer versions of the unix File command attempt to do a basic detection of character encoding. (also available on cygwin and mac)"

None of the above will be 100% reliable. If your files are definitely all in one of a handful of known encodings you may be able to do better.

share|improve this answer
add comment

This tool works great. Check it out. It shows all files and their encodings for a folder.

http://encodingchecker.codeplex.com/releases/view/59420

There is also this, for bulk changing files to UTF8.

http://www.rotatingscrew.com/utfcast.aspx

share|improve this answer
add comment

Under Windows this is possible by searching for the right Byte Order Mark (BOM), on the condition that the files were created with a BOM.

You would need a search program for that.
One possibility may be Grep for Windows and search using the beginning of file operator (^^).

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.