1

How can I inspect the characters of a file name in Windows 10 ?

I have some files which contains some 'space' characters, and other who contain some 'non-breaking-space' characters. And maybe some with a mix of the two, or others who contains other "space-like" characters.

Another example would be the latin 'c' character, VS the cyrillic 'с' character.

I need to know how to inspect those characters, when I have the need.

To reproduce a simplified sample of the problem I am facing, you can use this in a PowerShell :

mkdir 'test space'
mkdir 'test space'
dir test*space

(the second one is with a non-breaking space, you can write one with Alt + 0160 on numpad)

Here is the output on PowerShell :

example of folder with special char versus 'normal' chars

To be clear, I don't just want to differentiate between 2 nearly identical names.

I would like to have a way of knowing if one of the space in any filename / folder name is a special space (and which one it is), and same for other characters like 'c' : is it a latin 'c' or a cyrillic 'c' or some other graphically identical thing ? And which one ?


I have found different info on how to search for filenames with special characters : Trying to search filenames with special characters in windows explorer (Windows 10)

or how to create one :

How to create folder name or file name with special characters like \ / : * ? " < > |

How would I go about creating a filename with invalid characters such as :?> ?

But, if I've read correctly, it doesn't seem that the answers give a way to see the special characters.

4
  • Note : I understand I can search for filenames containing a specific special characters, but this solution does not scale for and is valid only if I already know which special unicode characters I am looking for. So, that's why I am looking for a solution that allows me to visualize the details of all filename characters. – Pacopaco Jul 10 '18 at 11:18
  • The simplest way I see is to use a custom font. Search for the font where the symbols in question differs (for example, cyrillic symbols are 1 pixel down, hard space is shown as 1-pixel dot, etc...). – Akina Jul 10 '18 at 11:35
  • That could be a possible answer, and fairly easy, do you you want to turn this comment into one ? – Pacopaco Jul 10 '18 at 21:04
  • No. It's an advice, not solution. If only I had a link to such font... but I have not it. – Akina Jul 11 '18 at 4:55
1

The only way to be certain what characters are hidden in a filename is to examine the volume table of contents (TOC) in a hex editor. Any given font you use to view a filename might be missing or have duplicates of a given character. For example, of the two files below that appear to be unins batt.png, one has a space and the other a non-breaking space in the name.

Space vs. NBS in filename

In a hex editor, the difference is obvious: 0x00FF2000 as opposed to 0x00F5A000.

VTOC in MiTec HexEdit

2
  • That was the "hex editor" answer I was hoping. As a complement, do you know any way to locate the entry address for some file in the TOC, other from searching for a part of it (like "batt") ? – Pacopaco Jul 11 '18 at 6:35
  • 1
    @Pacopaco, since the FAT32 root directory isn’t stored at a predefined location, I did just as you stated, searching on part of a filename. There are forensic tools to examine the TOC and links in detail, but I went for quick-and-dirty. Sorry about that. If someone knows of a free tool, please post it here. – DrMoishe Pippik Jul 11 '18 at 19:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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