示例#1
0
        public void ReadFromReader(StreamReader caisReader)
        {
            int    linesRead = 0;
            string line;

            while ((line = caisReader.ReadLine()) != null)
            {
                linesRead++;
                if (Trailer.IsTrailer(line))
                {
                    Trailer.Deserialize(line);
                    break;
                }

                if (linesRead == 1)
                {
                    Header.Deserialize(line);
                    continue;
                }

                var acc = new BusinessAccountRecord();
                acc.Deserialize(line);
                Accounts.Add(acc);
            }

            if (linesRead < 2)
            {
                throw new Exception("Invalid input string, at least 3 lines expected");
            }
        }
示例#2
0
        //-----------------------------------------------------------------------------------
        public void ReadFromString(string data)
        {
            var lines = data.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);

            if (lines.Length < 2)
            {
                throw new Exception("Invalid input string, at least 3 lines expected");
            }
            Header.Deserialize(lines[0]);
            for (int i = 1; i < lines.Length - 1; i++)
            {
                var acc = new BusinessAccountRecord();
                acc.Deserialize(lines[i]);
                Accounts.Add(acc);
            }
            Trailer.Deserialize(lines[lines.Length - 1]);
        }