예제 #1
0
        internal string ReadString()
        {
            int length = ReadU8();

            if (_compressed)
            {
                return(Sixbit.Decode(ReadBytes((int)Math.Ceiling(length * 6 / 8.0)), length));
            }

            return(_encoding.GetString(ReadBytes((length & 0b10111111) + 1)));
        }
예제 #2
0
        internal string ReadString()
        {
            int length = ReadU8();

            if (_compressed)
            {
                return(Sixbit.Decode(ReadBytes((int)Math.Ceiling(length * 6 / 8.0)), length));
            }

#if NETSTANDARD2_1 || NET5_0_OR_GREATER
            return(_encoding.GetString(ReadBytes((length & 0xBF) + 1)));
#elif NETSTANDARD2_0
            return(_encoding.GetString(ReadBytes((length & 0xBF) + 1).ToArray()));
#endif
        }