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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
  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 1 / 1 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.

1
2
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 1 / 3 odpovědětodpovědět

Super už mi to funguje vďaka za pomoc

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

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