Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re^2: Problem with utf8 after nearly 4096 bytes

by farang (Hermit)
on Sep 08, 2013 at 01:47 UTC ( #1052852=note: print w/ replies, xml ) Need Help??


in reply to Re: Problem with utf8 after nearly 4096 bytes
in thread Problem with utf8 after nearly 4096 bytes

Perl only recognizes the first 4096 bytes as utf8 because only the first block of text have the BOM. So he thinks that the first block is utf8 (and it goes ok) but recognizes all the other blocks as Unicode.
That cannot be. Perl does not use BOMs to determine encodings. If a file is opened with :encoding(utf-8) as utf::all does, the entire file is assumed to be in that encoding.

Here's something to try: get rid of any BOMs completely. In your original code, add this after populating $text.

$text =~ s/\x{FEFF}//g;
See this old discussion: UTF-8 text files with Byte Order Mark.

Also, make sure utf-8 encoding is correctly specified in your HTML header.


Comment on Re^2: Problem with utf8 after nearly 4096 bytes
Download Code
Re^3: Problem with utf8 after nearly 4096 bytes
by gvieira (Initiate) on Sep 08, 2013 at 03:05 UTC

    You have a point. Even without BOM the program still recognize that the first block is in utf8. How could he don't think the same of the rest of the file?

    There any way I can print these en dashs on file? Maybe using her hex value?

      You have a point. Even without BOM the program still recognize that the first block is in utf8. How could he don't think the same of the rest of the file?
      That's just it, Perl will threat the whole file as utf-8. It seems you are likely corrupting the file during upload. If you post the relevant code you are using to handle the upload, probably some monks can either see what's wrong with it or give a alternate approach for uploading which avoids the problem.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1052852]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (5)
As of 2014-12-18 02:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (41 votes), past polls