My guess is that you’ve told (Perl ...) that the text consists of utf-8, and that you are (or, it is) transferring the data in about-4096 byte chunks, and that a UTF-8 character sequence is being “cut in half” across that boundary. Well, it seems to me that if you said that the data was UTF-8, (Perl) is going to presume that every chunk is that way, and that every chunk is complete (which it is not). Perl therefore might try to “fix” the tail of one chunk, and/or it will be confused by the start of the next one.
So, I suggest that you tell (Perl) that the data-stream is binary, so that (Perl) won’t attempt to do anything to what it sees, until such time as you know that you have received and have concatenated-together the entire stream of data, chunk by chunk. This, and only this, ought to be a proper utf-8 stream ... which you can and should verify.
I put (Perl) in quotes since several different software agents could make this sort of mistake.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|