System.Xml.XmlStreamNodeWriter.UnsafeGetUTF8Length C# (CSharp) Méthode

UnsafeGetUTF8Length() protected méthode

protected UnsafeGetUTF8Length ( char chars, int charCount ) : int
chars char
charCount int
Résultat int
        unsafe protected int UnsafeGetUTF8Length(char* chars, int charCount)
        {
            char* charsMax = chars + charCount;
            while (chars < charsMax)
            {
                if (*chars >= 0x80)
                    break;

                chars++;
            }

            if (chars == charsMax)
                return charCount;

            char[] chArray = new char[charsMax - chars];
            for (int i = 0; i < chArray.Length; i++)
            {
                chArray[i] = chars[i];
            }
            return (int)(chars - (charsMax - charCount)) + GetByteCount(chArray);
        }