예제 #1
0
        public static string GenVersionInfoString(List <ABFileInfo> versions)
        {
            var sb = new StringBuilder(64);

            for (int i = 0; i < versions.Count; ++i)
            {
                ABFileInfo info = versions[i];
                sb.Append(string.Format("{0}:{1}:{2}:{3}\n", info.filename, info.md5, info.rawSize, info.compressSize));
            }
            return(sb.ToString());
        }
예제 #2
0
        public static Dictionary <string, ABFileInfo> ReadABVersionFromText(string text)
        {
            Dictionary <string, ABFileInfo> versions = new Dictionary <string, ABFileInfo>();

            string[] infos = text.Split(new[] { "\n" }, System.StringSplitOptions.RemoveEmptyEntries);

            for (int i = 0; i < infos.Length; ++i)
            {
                string[] fields = infos[i].Split(new[] { ":" }, System.StringSplitOptions.RemoveEmptyEntries);
                if (fields.Length == VERSION_LENGTH)
                {
                    ABFileInfo abInfo = new ABFileInfo();
                    abInfo.filename     = fields[0];
                    abInfo.md5          = fields[1];
                    abInfo.rawSize      = float.Parse(fields[2]);
                    abInfo.compressSize = float.Parse(fields[3]);
                    versions.Add(fields[0], abInfo);
                }
            }
            return(versions);
        }