There is nothing wrong with that encoding. It means exactly the same as the name you gave it.
According to the XML standard character references can be in the form #&n;
where n
is a decimal ([0-9]+
) or hexademical (x[0-9a-fA-F]+
) number, referring to the Unicode code point of the character represented. Thus the file name in your question is valid XML.
In your case the first character ا
(equivalent to ا
) represents the Unicode symbol with decimal code point 1575, usually represented in hexidecimal as U+0627. This code point is described as the Arabic letter "alef".
The symbols are encoded from left-to-right even though it is Arabic (right-to-left) symbols being encoded, so the "alef" is on the left of the ASCII file name. It is up to the rendering engine (whatever that might be) to render the string as RTL.
My Java experience is very limited, so unfortunately I cannot point you at a built-in or Spring feature that will help you handle this, but it seems to be that your XML is not properly decoded (if I had to guess).