Avatar billede casa2008 Nybegynder
05. august 2008 - 14:27 Der er 9 kommentarer og
1 løsning

object & string

Har lagt mærke til at functioner vil have output ud i object
hvordan converter man det til string ??

Foreksemple

Dim output As Object
output = My.Computer.FileSystem.GetDirectories("C:\compare")

hvordan for jeg facit ud i string eller en del af det

kunne foreksemple være " Count "
Avatar billede arne_v Ekspert
05. august 2008 - 15:09 #1
Du skal vil iterere over output ...
Avatar billede arne_v Ekspert
06. august 2008 - 02:16 #2
Eksempel:

Option Explicit On
Option Strict On

Module Program
    Sub Main()
        Dim d As String
        For Each d In My.Computer.FileSystem.GetDirectories("C:\")
            Console.WriteLine(d)
        Next
        Console.ReadKey()
    End Sub
End Module
Avatar billede casa2008 Nybegynder
06. august 2008 - 10:09 #3
Hej får denne fejl

Det er ikke muligt at læse nøgler, når ingen af programmerne har en konsol, eller når konsolinput er blevet omdirigeret fra en fil. Prøv Console.Read.

min code ser sådanne ud

øverst oppe har jeg sat

Option Explicit On
Option Strict On



Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim ged As Object
       
        ged = My.Computer.FileSystem.GetDirectoryInfo("c:\compare")
 
        Dim d As String
        For Each d In My.Computer.FileSystem.GetDirectories("c:\compare")
            Console.WriteLine(d)
        Next
        Console.ReadKey()

ville gerne have det ud i en textbox.text
Avatar billede casa2008 Nybegynder
06. august 2008 - 10:15 #4
GetFiles

foreksemple ged = My.Computer.FileSystem.GetFiles("C:\compare")

ville lave en count på hvor mange filer og hvad de hedder
med den skriver kun første linie

Dim ged As Object
       
        ged = My.Computer.FileSystem.GetFiles("C:\compare")
        Dim d As String
        For Each d In My.Computer.FileSystem.GetFiles("C:\compare")
            Console.WriteLine(d)
        Next
        TextBox3.Text = d
Avatar billede arne_v Ekspert
07. august 2008 - 02:25 #5
Mit lille eksempel var en console app.

Hvis din app er en GUI app, så skal du ikke bruge Console.WriteLine men bruge d
på anden vis.
Avatar billede casa2008 Nybegynder
11. august 2008 - 10:19 #6
Hej Arne tusind...Tak for dit svar

Kan dog ikke rigtig få det til at virke

Min kode er

Dim ged As Object
Dim d As String
       
ged = My.Computer.FileSystem.GetFiles("C:\compare")


For Each d In My.Computer.FileSystem.GetFiles("C:\compare")
Console.WriteLine(d)
       
Next
TextBox3.Text = d
ged = ged

når jeg kørere en debug på ged = ged  kan jeg se at

i object mode


+ ged Count 3

(0) "c:\compare\test.txt"
(1) "c:\compare\test.wave"
(3) "c:\compare\test.jpg"

og det er jo det jeg gerne vil have skrevet ud

f.eks

textbox12 = skal vise count 3 og textbox13 =  skal vise
c:\compare\test.txt
c:\compare\test.wave
c:\compare\test.jpg

Kan du hjælpe
Avatar billede arne_v Ekspert
11. august 2008 - 18:42 #7
...
TextBox3.Text = ""
For Each d In My.Computer.FileSystem.GetFiles("C:\compare")
  TextBox3.Text = TextBox3.Text + d + vbCrLf
Next
...
Avatar billede arne_v Ekspert
11. august 2008 - 18:45 #8
TextBox3 skal naturligvis vaere multi line !
Avatar billede casa2008 Nybegynder
13. august 2008 - 09:30 #9
Det Virker

Det er kanon mange tak arne for din tålmodighed : )
Avatar billede arne_v Ekspert
13. august 2008 - 14:54 #10
saa vil jeg smide et svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester