Glup problem sa command line argumentima (VB.net)

poruka: 3
|
čitano: 816
|
moderatori: XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
17 godina
offline
Glup problem sa command line argumentima (VB.net)

 

VB .net

console application

 

Ovaj komad koda mi nije jasan (uklonio sam višak)

 

Dim s() As String = System.Environment.GetCommandLineArgs()

If s.Count > 1 Then

     Src = s(s.Count - 2)

     Dst = s(s.Count - 1)

End If

 

kada pokrenem program (recimo jura.exe) sa

jura.exe c:\pero.iso "\\server\share\"

Dst ima vrijednost \\server\share

no dst.endswith("\") je true, i kada pokušam ukloniti zadnji \ iz stringa, ostane mi \\server\shar

 

no kada cpokrenem sa 

 

jura.exe c:\pero.iso "\\server\share"

onda mi uredno (naravno) dst.endswith("\") vraća false

i print stringa je \\server\share

 

 

 

a

jura.exe c:\pero.iso "\\server\share\\"

ovo vraća string \\server\share\
Ima li tko ideju zašto je to tako i kako rješiti problem?
Hvala

 

 

http://www.plecko.com.hr
Poruka je uređivana zadnji put pet 24.5.2013 11:38 (franjo tahy).
Moj PC  
0 0 hvala 0
17 godina
offline
Re: Glup problem sa command line argumentima (VB.n

Tu ima dosta toga šta si napisao s brda s dola.

 

Prvo i dosta bitno pitanje je čemu ovaj điđimi

If s.Count > 1 Then

     Src = s(s.Count - 2)

     Dst = s(s.Count - 1)

End If

Zašto se ne napisati samo

 

If s.Count = 2 Then (ili ide 3, već se ne sjećam, dugo nisam radio u VB.net-u, da li je prvi parametar ime aplikacije ili ne ?)

    Src = s(1)

    Dst = s(2)

Else

    usage()

End If

 

I da koristiš navodnike, pa pretpostavljam da si to upisao samo kao string, a ne literal string, pa ti se zbog toga zadnji backslash smatra escape char-om.

 

P.S. Nisam siguran, ali mislim da VB.NET nema literal operator kao C#, ali svejedno provjeri

'Genius might be the ability to say a profound thing in a simple way' Charles Bukowski
17 godina
offline
Re: Glup problem sa command line argumentima (VB.n
dado2202 kaže...

Tu ima dosta toga šta si napisao s brda s dola.

 

Prvo i dosta bitno pitanje je čemu ovaj điđimi

If s.Count > 1 Then

     Src = s(s.Count - 2)

     Dst = s(s.Count - 1)

End If

Zašto se ne napisati samo

 

If s.Count = 2 Then (ili ide 3, već se ne sjećam, dugo nisam radio u VB.net-u, da li je prvi parametar ime aplikacije ili ne ?)

    Src = s(1)

    Dst = s(2)

Else

    usage()

End If

Ima dosta parametara koje očekujem ali sam uklonio kod jer nije bitan za problematiku.

 

 

 

 

dado2202 kaže...

I da koristiš navodnike, pa pretpostavljam da si to upisao samo kao string, a ne literal string, pa ti se zbog toga zadnji backslash smatra escape char-om.

 

P.S. Nisam siguran, ali mislim da VB.NET nema literal operator kao C#, ali svejedno provjeri

Hvala

http://www.plecko.com.hr
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice