Beispiel #1
0
        public override string WriteDataString()
        {
            var asJson   = JsonConvert.SerializeObject(this);
            var embedStr = Base16k.ToBase16kString(Embedded);

            return(asJson.Length.ToString() + ':' + asJson + embedStr);
        }
Beispiel #2
0
        public override bool ReadDataString(string data)
        {
            var separatorLoc = data.IndexOf(':');

            if (separatorLoc == -1)
            {
                return(false);
            }
            var numSub  = data.Substring(0, separatorLoc);
            var success = int.TryParse(numSub, out int num);

            if (!success || data.Length < separatorLoc + 1 + num)
            {
                return(false);
            }
            var jsonStr    = data.Substring(separatorLoc + 1, num);
            var embedStr   = data.Substring(separatorLoc + 1 + num);
            var embedBytes = Base16k.FromBase16kString(embedStr);

            JsonConvert.PopulateObject(jsonStr, this);
            Embedded = embedBytes;
            return(true);
        }