utf-16BE, которая является кодовой страницей, используемой в семействе продуктов MS Office, будет хранить все символы как 2 байта и в значительной степени идентична "стандартной" части набора символов Unicode.
Linux, вероятно, использует utf-8, который будет хранить стандартные символы ASCII в одном байте , но может хранить другие символы Unicode в двух, трех или четырех байтах, в зависимости от кодовой точки Unicode. Поскольку самые левые биты заняты флагами, чтобы указать, что это не ascii и как далеко вы находитесь в многобайтовом символе. (Идея в том, что вы можете прыгнуть в строку utf-8 со случайного байта и найти начало символа, в котором находитесь.)
Для большинства дальневосточных наборов символов, которые имеют высокие кодовые точки в собственном Юникоде (как используется Java), обычно более эффективен в пространстве и времени обработки, чем UTF-8.