Exemplo n.º 1
0
        public List <List <String> > bufferingRow(List <String> row)
        {
            if (lineNumber == 0 && flag.HasFlag(Flags.Header))
            {
                rowHeader(row);
                return(null);
            }

            lineNumber++;

            for (int i = infoList.Count; i < row.Count; i++)
            {
                infoList.Add(new ColumnInformation());
            }

            for (int i = 0; i < row.Count; i++)
            {
                String            column = row[i];
                ColumnInformation info   = infoList[i];

                if (lineNumber == 1 && flag.HasFlag(Flags.Header))
                {
                    info.header = column;
                    continue;
                }

                if (flag.HasFlag(Flags.MaxWidth))
                {
                    info.maxWidth = Math.Max(info.maxWidth, column.Length);
                }

                if (flag.HasFlag(Flags.Nullable) || flag.HasFlag(Flags.MinWidth))
                {
                    info.minWidth = Math.Min(info.minWidth, column.Length);
                }
            }

            if (lineNumber >= limit)
            {
                streamInformation.active = false;
            }

            return(null);
        }
Exemplo n.º 2
0
        public List <String> rowHeader(List <String> header)
        {
            lineNumber++;

            for (int i = infoList.Count; i < header.Count; i++)
            {
                infoList.Add(new ColumnInformation());
            }

            for (int i = 0; i < header.Count; i++)
            {
                String            column = header[i];
                ColumnInformation info   = infoList[i];

                if (flag.HasFlag(Flags.Header))
                {
                    info.header = column;
                }
            }

            return(null);
        }