INI Datei erstellen und lesen (VB)
Hi alle zusammen, bin schon länger als leser hier im forum unterwegs und nun wende ich mich an euch weil ich bei einem winmo 6.5 projekt nicht weiter komme :)
Zum anliegen:
ich bin dabei ein arte remote control zu erstellen..
Wenn ich ein programm für den Windows PC erstelle, benutze ich immer ini dateien zum sichern der variablen - das wollte ich nun auch für den pocket pc machen jedoch kann ich den code nicht 1:1 übernehmen..
wie habt ihr euer problem gelöst? kann mir da jmd helfen?
/ PS: Nutze visual Studio, VB.Net, .netCF3.5
Vielen Danke!
Gruß Andre
AW: INI Datei erstellen und lesen (VB)
Man kann eine Settings Klasse erstellen und die dann als xml Datei serialisieren resp. deserialisieren.
Der folgende Code kann mittels csharp to vb übersetzt werden.
Die Klasse Settings enthält die Felder Text, Number und Date, die serialisiert werden (brauchen public get und set) und das Feld Id, das ignoriert wird. Die beiden statischen Methoden dienen dann dem Lesen und Schreiben der Datei.
Code:
using System;
using System.IO;
using System.Xml.Serialization;
namespace Test
{
public class Settings
{
public string Text { get; set; }
public double Number { get; set; }
public DateTime Date { get; set; }
[XmlIgnore]
public int Id { get; private set;}
public static Settings Read(string fullFileName)
{
Settings settings;
using (StreamReader streamReader = new StreamReader(fullFileName))
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(Settings));
settings = xmlSerializer.Deserialize(streamReader) as Settings;
}
return settings;
}
public static void Write(string fullFileName, Settings settings)
{
using (StreamWriter streamWriter = new StreamWriter(fullFileName))
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(Settings));
xmlSerializer.Serialize(streamWriter, settings);
}
}
}
}
Und hier ein kleiner Test:
Code:
using System;
using System.IO;
private void ReadSettings()
{
string settingsFullFileName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "MyAppSettings.xml");
Settings settings = new Settings();
settings.Text = "settings text";
settings.Number = 1.23;
settings.Date = DateTime.Now;
Settings.Write(settingsFullFileName, settings);
Settings settingsRead = Settings.Read(settingsFullFileName);
Debug.Assert(settings.Text == settingsRead.Text);
Debug.Assert(settings.Number == settingsRead.Number);
Debug.Assert(settings.Date == settingsRead.Date);
}
Und die von Settings.Write erstellte Datei sieht dann so aus:
PHP-Code:
<?xml version="1.0" encoding="utf-8"?>
<Settings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Text>settings text</Text>
<Number>1.23</Number>
<Date>2011-01-25T23:29:17-08:00</Date>
</Settings>
AW: INI Datei erstellen und lesen (VB)
danke! werde es direkt morgen testen