On my last try every adding section it adds 3x data on data.txt
I think that I can do my save on my destructor method but it doesn't work.
data format consists of 3 string expression likes: date + soccer team + country
This is a section from my DataStructor class
takimlar.Add("1905", "GS", "TR");
internal class Node
{
internal T ulke;
internal T takim;
internal T tarih;
internal Node next = null;
internal Node pre = null;
internal Node(T tarih, T takim, T ulke)
{ this.tarih = tarih; this.takim = takim; this.ulke = ulke; }
}
internal IEnumerable<string> GetEnumerator()
{
for (Node traveler = first; traveler != null; traveler = traveler.next)
yield return $"{traveler.tarih},{traveler.takim},{traveler.ulke}";
}
internal IEnumerable<Node> GetEnumeratorNodeUlke(T ulke)
{
for (Node traveler = first; traveler != null; traveler = traveler.next)
if (traveler.ulke.Equals(ulke))
yield return traveler;
}
How it can be fixed?
using System;
using System.Windows.Forms;
using System.IO;
using System.Linq;
using System.Collections.Generic;
namespace TAKIM_ULKE
{
internal partial class MainForm : Form
{
AdderForm adderForm = new AdderForm();
static string filePath = @"C:\Users\nevfe\source\repos\TAKIM_ULKE\TAKIM_ULKE\bin\Debug\netcoreapp3.1\data.txt";
List<string> lines = new List<string>();
List<string> output = new List<string>();
internal MainForm()
{
InitializeComponent();
lines = File.ReadAllLines(filePath).ToList();
foreach (string line in lines)
{
string[] entries = line.Split(',');
adderForm.takimlar.Add(entries[0], entries[1], entries[2]);
}
foreach (var item in adderForm.takimlar.GetEnumeratorUlke()) //Ülkeleri listele
ulkeComboBox.Items.Add(item);
}
~MainForm()
{
foreach (string item in adderForm.takimlar.GetEnumerator())
if (!lines.Contains(item))
output.Add(item);
File.WriteAllLines(filePath, output);
}
}
}