Am 28.12.18 um 00:45 schrieb brian m. carlson:
On Thu, Dec 27, 2018 at 08:55:27PM +0100, Johannes Sixt wrote:
But why do you add another U+FEFF on the way to UTF-8? There is one in the
incoming UTF-16 data, and only *that* one must be converted. If there is no
U+FEFF in the UTF-16 data, the should not be one in UTF-8, either.
Puzzled...
So for UTF-16, there must be a BOM. For UTF-16LE and UTF-16BE, there
must not be a BOM. So if we do this:
$ printf '\xfe\xff\x00\x0a' | iconv -f UTF-16BE -t UTF-16 | xxd -g1
00000000: ff fe ff fe 0a 00 ......
What sort of braindamage is this? Fix iconv.
But as I said, I'm not an expert. I just vented my worries that
widespread existing practice would be ignored under the excuse "you are
the outlier".
-- Hannes