System.IO.StreamReader   otázka

VB.NET, I/O operace

Zdravím

pri prvom spustení tohto programu keď ešte nie je vytvorený subor setting.ini vytvorim ho a hneď následne ho chcem prečítať a inicializovť ale vypíše mi že proces nemá prístup k súboru pretože je používaný iným procesom.

Vedel by mi niekto poradiť kde može byť problem?

Vďaka

  Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim zlozka As String
        'ak subor neexistuje tak ho vytvori
        If Not File.Exists("setting.ini") Then System.IO.File.Create("setting.ini")
       ' nasledne ho chcem precitat - TU MI VYHADZUJE CHYBU
        Dim load As New System.IO.StreamReader("setting.ini")
        zlozka = load.ReadLine
        load.Close()
        If zlozka = "" Then
opakuj:     If FolderBrowserDialog1.ShowDialog() = DialogResult.Cancel Then
                GoTo opakuj
            End If
            zlozka = FolderBrowserDialog1.SelectedPath
            Directory.CreateDirectory(zlozka)
            Dim zapis As New System.IO.StreamWriter("setting.ini")
            zapis.WriteLine(zlozka)
            zapis.Close()
        End If
       
       '...

       'dalsie prikazy

       '...

    End Sub

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Příkaz File.Create(string) vytvoří soubor a zároveň vrací FileStream pro zápis do tohoto souboru. Dokud tento stream korektně neuzavřete přes metodu Close(), nemůže ze souboru nikdo číst.

Dim stream as System.IO.FileStream = System.IO.File.Create("setting.ini")
stream.Close()

Doporučuji používát using pro automatické uzavření streamů.

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

Super už mi to funguje vďaka za pomoc

nahlásit spamnahlásit spam 0 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