Moin,
wie der Titel schon aussagt, möchte ich gerne Informationen in einer Datei speichen. Dieses soll unsichtbar passieren, sodass das der User der davor sitzt es nicht sieht.
Über welche Methode kann ich das realisieren?
MfG
khobi
Hallo khobi,
was soll unsichtbar passieren? Das Abspeichern der Datei? Die Datei selbst soll unsichtbar sein (in diesem Falle müsstest du beim Speichern halt FileAttributes.Hidden setzen)?
Gruß Michbeck1983
Neulich im Computerkurs:
Mein Computer kennt Else nicht! 😁
[URL]XING-Profil[/URL]
Guten Tag,
also ich würde das so verstehen, das du die Informationen speichern möchtest ohne das der User davon etwas mitbekommt. Unabhängig der Sichtbarkeit der Datei.
Dazu müsste man wissen was für Informationen du speichern möchtest.
Sind das z.B. 2 Pfade könnte man das einfach in den Settings der Datei ablegen.
Sind es X Pfade könnte man eine einfache Text Datei nehmen.
Sollte es sich aber um mehrere Pfade zu mehreren Dateien handeln, empfiehlt sich XML.
Speichern würde ich das in dem Ordner "Anwendungsdaten" des jeweiligen Benutzers.
Stichwort: SpecialDirectorys.
Gruß,
TriB
Hallo,
naja aber bei Windows ploppt ja auch kein Dialog auf "Dieses Programm speichert gerade die Datei xyz.txt" oder? 😁 Insofern ist das Abspeichern von Daten selbst erstmal nichts, was der Benutzer mitkriegt.
Es sei denn, die abzuspeichernden Daten sind so groß, dass es spürbare Verzögerungen gibt. Dann muss man halt die Speichern-Methode in einen extra Thread auslagern.
Ansonsten hat trib schon sehr gute Empfehlungen gegeben.
Gruß Michbeck1983
Neulich im Computerkurs:
Mein Computer kennt Else nicht! 😁
[URL]XING-Profil[/URL]
So schnell soviel Antworten, das Klasse!!!
Also ich möchte, Eingaben aus Eingabefeldern abspeichern können, wenn es geht in eine Datei. Diese Interaktion wird von dem User ausgeführt. Heißt er klickt auf einen Button und speichert es dann in einer Datei. Doch soll dabei kein Dialogfenster oder etwas dergleichen auftauchen. Höchstens nen Label das es geklappt hat.
Speichern möchte ich die Datei dann da, wo auch das Programm liegt. Den Pfad wo das Modul gerade ausgeführt wird, habe ich bereits.
Es geht hier jetzt nicht um die Sichtbarkeit der Datei oder darum das man sie öffnen kann mit einem anderen Programm. Lediglich um die Eingaben speichern zu können.
Hoffe es ist so aufsclhussreicher, was ich mir vorstelle.
Hallo khobi,
es gibt ja keine .Net-Funktion, die automatisch Dateien speichert und dabei Dialogfenster aufruft.
Heißt: du rufst in deinem Button eine Funktion auf, die das Speichern der Datei übernimmt. Das war's im Wesentlichen schon, Dialogfelder müsstest du ja selbst anzeigen lassen.
Gruß Michbeck1983
Neulich im Computerkurs:
Mein Computer kennt Else nicht! 😁
[URL]XING-Profil[/URL]
Das mit dem Fenster ist dann optional. Hast du einen Anhaltspunkt für das Speichern?
Das klingt ja recht simpel.
Da du die Eingaben speichern (und wahrscheinlich nach einem Neustart auch wieder einlesen) möchtest, empfehle ich XML. Dazu gibt es hier im Forum viele Anleitungen.
So kannst du z.B. den Namen des Controls und den Wert sichern.
<Control="Textbox1" value="Das ist mein Text">
Damit kannst du garantieren, das die Werte auch wieder ihre Felder finden. Abgesehen davon hast du keine Probleme, wenn man ein neues Feld hinzu kommt.
Die weitere Funktionalität, wie du sie beschreibst gehört aber imho zu den Grundlagen.
Trotzdem habe ich dir mal ein ganz kurzes Snippet zum Verständnis gebastelt, weil ich das eh gerade in der Hand hatte.
using System.IO;
using System.Xml;
if (File.Exists(path)
XmlTextReader reader = new XmlTextReader(path);
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
if (reader.AttributeCount >= 1)
{
if (reader.GetAttribute(0) == "Textbox1")
Textbox1.Text = reader.GetAttribute(1);
if (reader.GetAttribute(0) == "Textbox2")
Textbox2.Text = reader.GetAttribute(1);
if (reader.GetAttribute(0) == "CheckBox1")
CheckBox1 = reader.GetAttribute(1).Contains("True") ? true : false;
}
break;
default:
break;
}
}
reader.Close();
Gruß,
TriB
Hi,
ich denke für dich ist [Tutorial] Alles über Dateien 2.2 auch hilfreich
mit freundlichen Grüßen,
Tomot
Projekte: www.gesellschaftsspieler-gesucht.de
Hallo khobi,
damit der User nichts davon merkt, musst du [FAQ] Warum blockiert mein GUI? beachten.
herbivore