Exemplo n.º 1
0
        public void SaveDelimitedFile(string rootNodePath, string filename, Encoding encoding = null, bool includeHeader = true)
        {
            using (var dest = new FileStream(filename, FileMode.Create, FileAccess.ReadWrite))
            {
                using (var writer = new FlatWriter(dest, encoding ?? _defaultEncoding))
                {
                    writer.AllowQuotes   = _allowQuotes;
                    writer.AlwaysQuote   = _alwaysQuote;
                    writer.IncludeHeader = includeHeader;

                    var rootNode = _nodes.GetNode(rootNodePath);
                    if (_columns.Count == 0)
                    {
                        _columns = rootNode.Members.Where(x => x.Value.IsSingleValueNode).Select(x => x.Value.Name).ToList();
                    }

                    var rows = _rows.GetRows(rootNode).ToList();

                    writer.WriteDelimited(rows, SharpMapType.Variable, _delimiter, _columns, _aliases);
                }
            }
        }