Пример #1
0
    public void Read_Test()
    {
        var i18ntext = new I18nTextType();

        i18ntext.Langs.TryAdd("en", new I18nTextTable(new Dictionary <string, string>
        {
            { "Greeting", "Hello, World!" },
            { "Home", "Home" }
        }));
        i18ntext.Langs.TryAdd("fr", new I18nTextTable(new Dictionary <string, string>
        {
            { "Greeting", "Bonjour le monde!" }
        }));

        using var stream = new I18nTextTableStream(i18ntext);
        var buff     = new List <byte>();
        var readBuff = new byte[3];

        for (; ;)
        {
            var cbRead = stream.Read(readBuff, 0, 3);
            if (cbRead == 0)
            {
                break;
            }
            buff.AddRange(readBuff.Take(cbRead));
        }

        Encoding.UTF8.GetString(buff.ToArray()).Is("enGreetingHello, World!HomeHomefrGreetingBonjour le monde!");
    }
Пример #2
0
        internal static string GenerateHash(I18nTextType i18nText)
        {
            using var hash   = SHA256.Create();
            using var stream = new I18nTextTableStream(i18nText);
            var hashBytes = hash.ComputeHash(stream);

            return(ToBase36(hashBytes));
        }