mirror of
https://github.com/UglyToad/PdfPig.git
synced 2025-10-15 19:54:52 +08:00
support big endian and little endian utf 16 in string tokens #32
This commit is contained in:
@@ -146,7 +146,32 @@
|
||||
}
|
||||
}
|
||||
|
||||
token = new StringToken(builder.ToString());
|
||||
string tokenStr;
|
||||
if (builder.Length >= 2)
|
||||
{
|
||||
if (builder[0] == 0xFE && builder[1] == 0xFF)
|
||||
{
|
||||
var rawBytes = OtherEncodings.StringAsLatin1Bytes(builder.ToString());
|
||||
|
||||
tokenStr = Encoding.BigEndianUnicode.GetString(rawBytes);
|
||||
}
|
||||
else if (builder[0] == 0xFF && builder[1] == 0xFE)
|
||||
{
|
||||
var rawBytes = OtherEncodings.StringAsLatin1Bytes(builder.ToString());
|
||||
|
||||
tokenStr = Encoding.Unicode.GetString(rawBytes);
|
||||
}
|
||||
else
|
||||
{
|
||||
tokenStr = builder.ToString();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
tokenStr = builder.ToString();
|
||||
}
|
||||
|
||||
token = new StringToken(tokenStr);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
Reference in New Issue
Block a user