---
title: "kontrollera filnamn"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/161610-kontrollera-filnamn"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Vinnaren"
published: "2007-06-16T13:08:27.000Z"
updated: "2007-06-16T18:24:49.000Z"
replies: 8
views: 513
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/161610-kontrollera-filnamn"
---

# kontrollera filnamn

## #1 — Vinnaren, 2007-06-16T13:08Z

SKulle behöva hjälp med att kontrollera vad filen heter som man försöker öppna.

Har provat:

```
Dim OpenDlg As New OpenFileDialog()

If OpenDlg.FileName.CompareTo("test") Then
'gör något
ElseIf OpenDlg.FileName.CompareTo("test2") Then
'gör något
Else
     Call Error_file()
End If
```

 

När jag öppnar "test" så funkar det, men när jag öppnar "test2" händer ingenting. Utan den går in i den första iaf, även att den inte ska det   x( 

Vad har jag gjort för fel :OO 

Tacksam för all hjälp

Permalänk: https://www.webforum.nu/p/161610

## #2 — emission, 2007-06-16T15:11Z

Använd Equals, inte CompareTo.

Permalänk: https://www.webforum.nu/p/1993689

## #3 — Vinnaren, 2007-06-16T15:41Z

Det vill inte funka   x( 

```
Dim OpenDlg As New OpenFileDialog()

If OpenDlg.FileName.Equals("test") Then
'gör något
ElseIf OpenDlg.FileName.Equals("test2") Then
'gör något
Else
     Call Error_file()
End If
```

 

Den går in i else-satsen hela tiden, o då öppnar jag rätt fil   : :OO

Permalänk: https://www.webforum.nu/p/1993693

## #4 — emission, 2007-06-16T16:09Z

Jag kan inte se att du visar dialogrutan någonstans (ShowDialog). Som det är nu kommer OpenDlg.FileName aldrig att få något värde.

Permalänk: https://www.webforum.nu/p/1993696

## #5 — Vinnaren, 2007-06-16T16:12Z

hela min kod:

```
Private Sub btnOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOpen.Click

        Dim sr As IO.StreamReader

        Dim OpenDlg As New OpenFileDialog()

        OpenDlg.Filter = "Text File (*.txt)|*.txt"
        OpenDlg.InitialDirectory = IO.Directory.GetCurrentDirectory

        If OpenDlg.ShowDialog() = System.Windows.Forms.DialogResult.OK Then

            lblResult.Text = ""

            Dim txt, txt2 As String
            Dim start1, minPrice As Integer

            '### KONTROLLERAR VILKEN FIL SOM ÖPPNAS
            If OpenDlg.FileName.Equals("test") Or OpenDlg.FileName.Equals("test2") Then

                If OpenDlg.FileName.Equals("test") Then
                    minPrice = 100
                Else
                    minPrice = 10
                End If

                sr = IO.File.OpenText(OpenDlg.FileName)

                Do While sr.Peek <> -1

                    txt = sr.ReadLine

                    start1 = txt.IndexOf(";")
                    txt2 = txt.Substring(start1 + 1)

                    If CDbl(txt2) > minPrice Then
                        txt = txt.Substring(0, start1)
                        lblResult.Text &= txt & vbCrLf
                    End If

                Loop
                sr.Close()

            Else
                Call Error_file()
            End If

            End If

    End Sub
```

Permalänk: https://www.webforum.nu/p/1993697

## #6 — emission, 2007-06-16T17:19Z

FileName returnerar hela sökvägen, så en jämförelse med bara "test1" och "test2" (trodde det var exempelvärden..) kommer inte att funka. Använd Path.GetFileNameWithoutExtension(OpenDlg.FileName) så kommer du att få ut "test1" och "test2".

Permalänk: https://www.webforum.nu/p/1993703

## #7 — Vinnaren, 2007-06-16T18:01Z

hmm, ok. Är det såhär det ska vara?

```
If Path.GetFileNameWithoutExtension(OpenDlg.FileName) = "test" Or Path.GetFileNameWithoutExtension(OpenDlg.FileName) = "test2" Then
```

 

Nu får jag felmeddelande på Path, att den inte är deklarerad   :q

Permalänk: https://www.webforum.nu/p/1993712

## #8 — emission, 2007-06-16T18:14Z

Path ligger i System.IO

Permalänk: https://www.webforum.nu/p/1993716

## #9 — Vinnaren, 2007-06-16T18:24Z

tusen tack emission   :bire

Permalänk: https://www.webforum.nu/p/1993719

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/161610-kontrollera-filnamn
