Witam,
mam taki problem.
Aplikacja służy do nasłuchu sieci i wyłapywania pakietów. Pakiet są o określonej strukturze. Czyli przenoszą kilka informacji w tym znacznik. W znaczniku zawarta jest informacja czy dany pakiet jest dla nas interesujący.
Wyłapane pakiety wyświetla w konsoli (i to działa poprawnie)
I chciałbym aby zapisywała do pliku.
I mam tutaj problem, ponieważ do pliku wpisuje tylko jeden, ostatni element.
W pliku txt wygląda to następująco:
9;04:28:10:487 ;04:28:10:501 ;2222
Czyli tak oddzielone ";" mamy numer wysłanego pakietu, godzinę wysłania, godzinę odebrania i port na który przyszedł pakiet.
Na tą chwile aplikacja zapisuje do pliku txt. Nie ukrywam żę w następnym kroku będę chciał aby te zmienne były zapisywane do dokumentu excel.
Proszę o pomoc.
Mój kod
namespace ConsoleApplication6
{
class Program
{
public static string datePatt = @"hh:mm:ss:fff tt";
public static int Main()
{
Console.WriteLine("podaj numer portu do nasłuchu\n");
int listenPort = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("podaj znacznik\n");
string znacznik = Console.ReadLine();
string filePath = "plik.txt";
bool done = false;
UdpClient listener = new UdpClient(listenPort);
IPEndPoint groupEP = new IPEndPoint(IPAddress.Any, listenPort);
try
{
Console.WriteLine("Czekam na poloczenie");
string[] tabString = new string[4];
while (!done)
{
byte[] bytes = listener.Receive(ref groupEP);
string slowo = Encoding.ASCII.GetString(bytes, 0, bytes.Length);
tabString = slowo.Split(';');
DateTime saveNow = DateTime.Now;
DateTime saveUtcNow = DateTime.UtcNow;
string dtString = saveNow.ToString(datePatt);
if (tabString[1] == znacznik)
{
try
{
string DOZAPISANIA = tabString[0] + ";" + tabString[2] + ";" + dtString + ";" + tabString[3];
if (!File.Exists(filePath))
{ File.Create(filePath); }
TextWriter writer = new StreamWriter(filePath);
writer.WriteLine(DOZAPISANIA);
writer.Close();
Console.WriteLine("{0}\n", DOZAPISANIA);
}
catch (Exception ex)
{
}
finally
{
tabString[0] = null;
tabString[1] = null;
tabString[2] = null;
tabString[3] = null;
}
}
}
}
catch (Exception e)
{
}
finally
{
listener.Close();
}
return 0;
}
}
}
Pozdrawiam