As others have suggested, and your last comment has indicated, there's something simply going on with the character encoding. What I found a bit amusing was that the last line of the file was:
This TEXT file has been saved with notepad.exe Encoding ANSI.
And sure enough, the original file imported using:
Import["~/Downloads/test.txt", CharacterEncoding -> "WindowsANSI"]
If I hadn't been given that tip, I would have done something like this to start debugging:
Find some appropriate range of bytes from the file which contain the character in question. I could import as "String" format which is a binary format which has no encoding and imports a bytestring first:
In[12]:= str = StringTake[Import["~/Downloads/test.txt", "String"], 175 ;; 185]
Out[12]= "mbol (?) in"
It doesn't even look like the website is parsing the glyph I'm seeing above, but it's clearly not the EUR symbol... Now that I have the bytes, lets get their character codes, and see what interpreting those bytes as different encodings looks like. With this I could visually inspect all results, but since I know which character I want to find, I can speed this process up by only taking results which have the expected character:
In[16]:=
Select[
AssociationMap[FromCharacterCode[ToCharacterCode[str], #] &, $CharacterEncodings]
,
StringContainsQ["\[Euro]"]
]
During evaluation of In[18]:= $CharacterEncoding::utf8: The byte sequence {128} could not be interpreted as a character in the UTF-8 character encoding.
During evaluation of In[18]:= $CharacterEncoding::utf8: The byte sequence {128} could not be interpreted as a character in the UTF-8 character encoding.
Out[18]= <|"WindowsANSI" -> "mbol (\[Euro]) in",
"WindowsBaltic" -> "mbol (\[Euro]) in",
"WindowsEastEurope" -> "mbol (\[Euro]) in",
"WindowsGreek" -> "mbol (\[Euro]) in",
"WindowsThai" -> "mbol (\[Euro]) in",
"WindowsTurkish" -> "mbol (\[Euro]) in"|>
Those messages are pretty useful, the data is certainly not UTF-8.