diff --git a/BoerseDataConvert/BoerseDataConvert/BoerseDataConvert.csproj b/BoerseDataConvert/BoerseDataConvert/BoerseDataConvert.csproj index 4d12dd3..aa11652 100644 --- a/BoerseDataConvert/BoerseDataConvert/BoerseDataConvert.csproj +++ b/BoerseDataConvert/BoerseDataConvert/BoerseDataConvert.csproj @@ -15,4 +15,8 @@ + + + + diff --git a/BoerseDataConvert/BoerseDataConvert/Controller/RecordController.cs b/BoerseDataConvert/BoerseDataConvert/Controller/RecordController.cs index 1a8734a..da44107 100644 --- a/BoerseDataConvert/BoerseDataConvert/Controller/RecordController.cs +++ b/BoerseDataConvert/BoerseDataConvert/Controller/RecordController.cs @@ -25,20 +25,20 @@ namespace BoerseDataConvert public string ConvertToXml(Record record) { StringBuilder xmlRecord = new StringBuilder(); - xmlRecord.Append($" \n"); + xmlRecord.Append($" \n"); foreach (var tagValue in record.TagsValues) { try { string tag =CheckTagValue(tagValue.Key, tagValue.Value); - xmlRecord.Append($" <{tag}>{tagValue.Value}\n"); + xmlRecord.Append($" <{tag}>{tagValue.Value}\n"); } catch (ArgumentException e) { Console.WriteLine(e.Message); } } - xmlRecord.Append($" "); + xmlRecord.Append($" "); count++; return xmlRecord.ToString(); } diff --git a/BoerseDataConvert/BoerseDataConvert/Views/Reader.cs b/BoerseDataConvert/BoerseDataConvert/Views/Reader.cs index 7ea6f04..6ff63d3 100644 --- a/BoerseDataConvert/BoerseDataConvert/Views/Reader.cs +++ b/BoerseDataConvert/BoerseDataConvert/Views/Reader.cs @@ -16,7 +16,7 @@ namespace BoerseDataConvert public Reader(string adr, string[] filesNames) { fileInd = 0; - reader = new StreamReader($@"{adr}/{filesNames[fileInd]}"); + reader = new StreamReader($@"{adr}/{filesNames[fileInd]}", CodePagesEncodingProvider.Instance.GetEncoding(1252)); this.adr = adr; this.filesNames = filesNames; reader.ReadLine(); @@ -28,8 +28,9 @@ namespace BoerseDataConvert { fileInd++; reader.Close(); - reader = new StreamReader($@"{adr}/{filesNames[fileInd]}"); + reader = new StreamReader($@"{adr}/{filesNames[fileInd]}", CodePagesEncodingProvider.Instance.GetEncoding(1252)); RecordController.NextFile(filesNames[fileInd]); + Writer.NextFile(filesNames[fileInd]); s = reader.ReadLine(); s = reader.ReadLine(); } diff --git a/BoerseDataConvert/BoerseDataConvert/Views/Writer.cs b/BoerseDataConvert/BoerseDataConvert/Views/Writer.cs new file mode 100644 index 0000000..f9cd52f --- /dev/null +++ b/BoerseDataConvert/BoerseDataConvert/Views/Writer.cs @@ -0,0 +1,40 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace BoerseDataConvert +{ + public class Writer + { + private static string curFilesName; + private static StreamWriter writer; + + public Writer(string filesName) + { + curFilesName = filesName; + string[] file = curFilesName.Split('.').ToArray(); + writer = new StreamWriter($"{file[0]}.xml"); + writer.WriteLine($""); + } + public void WriteRecord(string record) + { + writer.WriteLine(record); + } + public static void NextFile(string fileName) + { + EndFile(); + curFilesName = fileName; + string[] file = curFilesName.Split('.').ToArray(); + writer = new StreamWriter($"{file[0]}.xml"); + writer.WriteLine($"
"); + } + public static void EndFile() + { + writer.WriteLine("
"); + writer.Close(); + } + } +}