Binární soubor   otázka

VB.NET, I/O operace, .NET

Dobrý den,

potřeboval bych v Microsoft Visual Basic 2008 Express Edition ulozit nastaveni programu do binarniho souboru a pri dalsim spusteni, toto nastaveni opet nacist.

Muzu poprosit o radu jak na to?

Děkuji Rudolf Dvořák

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Nastavení připravte jako třídu (Class) ti pak pomocí System.Runtime.Serialization.Formatters.Binary.BinaryFormatter uložíte nebo nahrajete. Soubor v sobě uchovává veškeré informace o třídě včetně typu a všech proměných.

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

napsal jem ti ukázku

Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim n As New Nastavení

n.Nastavení.Add("ted", Now)

n.Uložit("d:\0.bin")

n.Načíst("d:\0.bin")

End Sub

End Class

Public Class Nastavení

Private _setting As New Dictionary(Of String, Object)

Public Property Nastavení() As Dictionary(Of String, Object)

Get

Return _setting

End Get

Set(ByVal value As Dictionary(Of String, Object))

_setting = value

End Set

End Property

Public Sub Uložit(ByVal soubor As String)

Dim bf As New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter

Dim f As New IO.FileStream(soubor, IO.FileMode.OpenOrCreate, IO.FileAccess.Write)

bf.Serialize(f, _setting)

f.Flush()

f.Close()

End Sub

Public Sub Načíst(ByVal soubor As String)

Dim bf As New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter

Dim f As New IO.FileStream(soubor, IO.FileMode.Open, IO.FileAccess.Read)

_setting = bf.Deserialize(f)

f.Close()

End Sub

End Class

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Prozkoumejte My.Settings, to dělá přesně toto a je to ve VB.NET hotové ;-)

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Ne Settings ukládá do XML souboru a ten je textový.

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Do toho XML souboru lze pochopitelně uložit i binární data, pokud by to bylo z nějakého důvodu třeba.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

A do binárního souboru textová data, to neřeší že požedavek byl na binární soubor.

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Proč v konfiguraci binární data? Má to nějaký zvláštní důvod?

nahlásit spamnahlásit spam 3 / 3 odpovědětodpovědět

Dobrý večer,

děkuji za odpovědi.

K tomu proč binární: Jde o to, že děláme školní projekt a zadání je do binárního souboru.

Děkuji a prosím o trpělivost, jsem začátečník.

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Ještě doplnění: jde o to že konfigurace má být uložena jako binární soubor.

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Nejjednodušší bude ta binární serializace, ale všechny typy v hierarchii musí být serializovatelné.

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback