in reply to What does UTF-8 mean?

That error messages means a string that Perl thinks is in Unicode is not valid UTF-8. This is probably because it is not UTF-8 but some other character encoding.

To fix this, we need to see at least that area of code. Also, we need to know where the string is coming from. And if the script is using 'use utf8' to interpret the program source as Unicode.

To answer the subject, UTF-8 is a character encoding for representing Unicode characters. Perl uses UTF-8 as the internal representation of Unicode strings. In Perl, strings can be marked as Unicode or byte strings.