コード例 #1
0
        private static ImportItem ParseLine(Int32 line, String data)
        {
            ImportItem result = new ImportItem()
            {
                Line = line,
                Data = data
            };

            Int32 offset = ImportParser.IndexOfWhiteSpace(data);

            if (offset >= 0 && offset < data.Length)
            {
                result.Method = data.Substring(0, offset).Trim().Trim('"');
                data          = data.Substring(offset).TrimStart();

                offset = ImportParser.IndexOfWhiteSpace(data);

                if (offset >= 0 && offset < data.Length)
                {
                    result.Checksum = data.Substring(0, offset).Trim().Trim('"');
                    result.FilePath = data.Substring(offset).Trim().Trim('"');
                }
            }

            return(result);
        }
コード例 #2
0
        public static IEnumerable <ImportItem> Parse(String value)
        {
            if (String.IsNullOrWhiteSpace(value))
            {
                throw new ArgumentOutOfRangeException(nameof(value), "No content to parse as import data.");
            }

            Int32 line = 0;

            foreach (String data in value.Split(new String[] { Environment.NewLine }, StringSplitOptions.None))
            {
                yield return(ImportParser.ParseLine(++line, data));
            }
        }