Пример #1
0
        /// <summary>
        /// Writes data in xml file.
        /// </summary>
        /// <param name="streamWriter">Provider for writing.</param>
        public void SaveToXml(StreamWriter streamWriter)
        {
            XmlSerializer serializer             = new XmlSerializer(typeof(FileCabinetRecord[]));
            FileCabinetRecordXmlWriter xmlWriter = new FileCabinetRecordXmlWriter(streamWriter, serializer);

            xmlWriter.Writer(this.records);
        }
 /// <summary>
 /// Save records to .xml file.
 /// </summary>
 /// <param name="stream">FileStream.</param>
 public void SaveToXml(FileStream stream)
 {
     using (StreamWriter writer = new StreamWriter(stream))
     {
         FileCabinetRecordXmlWriter fileCabinetRecordXmlWriter = new FileCabinetRecordXmlWriter(writer);
         fileCabinetRecordXmlWriter.Write(this.records);
     }
 }
        /// <summary>
        /// passing a stream to a class <see cref="FileCabinetRecordXmlWriter"/> and list of record.
        /// </summary>
        /// <param name="sw">stream.</param>
        public void SaveToXml(StreamWriter sw)
        {
            this.xmlWriter = new FileCabinetRecordXmlWriter(XmlWriter.Create(sw, this.settings));
            foreach (var record in this.records)
            {
                this.list.Add(record);
            }

            this.xmlWriter.Write(this.list);
        }
        /// <summary>Saves snapshot to XML file.</summary>
        /// <param name="sr">The stream for a file.</param>
        public void SaveToXml(StreamWriter sr)
        {
            FileCabinetRecordXmlWriter writer = new FileCabinetRecordXmlWriter(sr);

            for (int i = 0; i < this.records.Length; i++)
            {
                writer.Write(this.records[i]);
            }

            writer.EndWriting();
        }
Пример #5
0
        public void SaveToXml(StreamWriter streamWriter)
        {
            var document  = new XDocument(new XElement("records"));
            var xmlWriter = new FileCabinetRecordXmlWriter(document);

            foreach (var record in records)
            {
                xmlWriter.Write(record);
            }

            document.Save(streamWriter);
        }
Пример #6
0
        /// <summary>Saves snapshot to xml file.</summary>
        /// <param name="writer">Writer.</param>
        /// <exception cref="ArgumentNullException">Thrown when writer is null.</exception>
        public void SaveToXml(StreamWriter writer)
        {
            if (writer == null)
            {
                throw new ArgumentNullException(nameof(writer));
            }

            var settings = new XmlWriterSettings
            {
                Indent = true,
            };
            var formatter = new XmlSerializer(typeof(List <FileCabinetRecord>));
            var xmlWriter = new FileCabinetRecordXmlWriter(writer);

            xmlWriter.Write(this.records, formatter);
        }
        /// <summary>
        /// Saves records to xml file.
        /// </summary>
        /// <param name="writer">Streamwriter to save records.</param>
        /// <exception cref="ArgumentNullException">Writer must be not null.</exception>
        public void SaveToXml(XmlWriter writer)
        {
            if (writer is null)
            {
                throw new ArgumentNullException(nameof(writer), Configurator.GetConstantString("NullStream"));
            }

            writer.WriteStartElement(Configurator.GetConstantString("XmlElementRecords"));
            using FileCabinetRecordXmlWriter xmlWriter = new FileCabinetRecordXmlWriter(writer);
            foreach (var record in this.records)
            {
                xmlWriter.Write(record);
            }

            writer.WriteEndElement();
        }
Пример #8
0
        /// <summary>
        /// Save records to xml file.
        /// </summary>
        /// <param name="streamWriter">Stream for writing.</param>
        public void SaveToXml(StreamWriter streamWriter)
        {
            XmlWriterSettings writerSettings = new XmlWriterSettings
            {
                Indent              = true,
                OmitXmlDeclaration  = true,
                NewLineOnAttributes = false,
            };
            var cabinetRecordXmlWriter = new FileCabinetRecordXmlWriter(XmlWriter.Create(streamWriter, writerSettings));

            foreach (var record in this.records)
            {
                cabinetRecordXmlWriter.Write(record);
            }

            cabinetRecordXmlWriter.EndSaving();
        }
        /// <summary>
        /// Saves the records to xml file.
        /// </summary>
        /// <param name="writer">Xml writer.</param>
        /// <returns>Whether operation succeeded.</returns>
        public bool SaveToXml(StreamWriter writer)
        {
            XmlWriter xmlWriter = XmlWriter.Create(writer);
            FileCabinetRecordXmlWriter fileXmlWriter = new FileCabinetRecordXmlWriter(xmlWriter);

            xmlWriter.WriteStartDocument();
            xmlWriter.WriteStartElement("records");

            foreach (var record in this.Records)
            {
                fileXmlWriter.Write(record);
            }

            xmlWriter.WriteEndDocument();
            xmlWriter.Close();

            return(true);
        }
        /// <summary>
        /// Method calls FileCabinet Record XmlWriter. Write and send there record.
        /// </summary>
        /// <param name="streamWriter">Opened.</param>
        public void SaveToXml(StreamWriter streamWriter)
        {
            XmlWriterSettings settings = new XmlWriterSettings();

            settings.Indent      = true;
            settings.IndentChars = "    ";
            XmlWriter xmlWriter = XmlWriter.Create(streamWriter, settings);

            this.xmlWriter = new FileCabinetRecordXmlWriter(xmlWriter);

            xmlWriter.WriteStartElement("records");

            foreach (var item in this.fileCabinetRecords)
            {
                this.xmlWriter.Write(item);
            }

            xmlWriter.WriteEndElement();

            xmlWriter.Close();
        }
Пример #11
0
        private void WriteAllRecordsXml(StreamWriter textWriter, FileCabinetRecord[] records)
        {
            var xmlWriter = new FileCabinetRecordXmlWriter(textWriter);

            xmlWriter.Write(records);
        }
        private void ExportTo(string format, string path)
        {
            var snapshot = this.Service.MakeSnapshot();

            bool   isCanceled = false;
            string message    = string.Empty;

            if (File.Exists(path))
            {
                Console.Write($"File is exist - rewrite {path} [Y/n] ");
                isCanceled = !DataHelper.YesOrNo();
            }

            if (isCanceled)
            {
                Console.WriteLine("Export canceled by the user.");
            }

            FileStream filestream = default;

            try
            {
                filestream = File.Create(path);
            }
            catch (FileNotFoundException)
            {
                Console.WriteLine($"Export failed: can't open file {path}.");
            }
            catch (UnauthorizedAccessException ex)
            {
                Console.WriteLine(ex.Message);
            }
            catch (DirectoryNotFoundException ex)
            {
                Console.WriteLine(ex.Message);
            }

            if (filestream is null)
            {
                message = "Invalid path.";
            }
            else
            {
                using var stream = new StreamWriter(filestream);

                if (format.Equals(CsvString, StringComparison.InvariantCultureIgnoreCase))
                {
                    using var writer = new FileCabinetRecordCsvWriter(stream);
                    snapshot.SaveTo(writer);
                    message = $"All records export into CSV file {path}";
                }

                if (format.Equals(XmlString, StringComparison.InvariantCultureIgnoreCase))
                {
                    using var writer = new FileCabinetRecordXmlWriter(stream);
                    snapshot.SaveTo(writer);
                    message = $"All record export into XML file {path}";
                }
            }

            Console.WriteLine(message);
        }
Пример #13
0
        /// <summary>
        /// Saves to the XML file.
        /// </summary>
        /// <param name="writer">Stream to write.</param>
        public void SaveToXml(StreamWriter writer)
        {
            var xmlWriter = new FileCabinetRecordXmlWriter(writer);

            xmlWriter.Write(this.records);
        }
 /// <summary>
 /// Save snapshot to XML file.
 /// </summary>
 /// <param name="writer"> Get writer.</param>
 public void SaveToXML(FileCabinetRecordXmlWriter writer)
 {
     writer.Write(this.records);
 }
Пример #15
0
        /// <summary>
        /// Метод записи в xml.
        /// </summary>
        /// <param name="xmlWriter">StreamWriter.</param>
        public void SaveToXml(XmlWriter xmlWriter)
        {
            FileCabinetRecordXmlWriter fileCabinetRecordXmlWriter = new FileCabinetRecordXmlWriter(xmlWriter);

            fileCabinetRecordXmlWriter.Write(this.records);
        }