Metoda s parametry – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Metoda s parametry – .NET – Fórum – Programujte.comMetoda s parametry – .NET – Fórum – Programujte.com

 

domitea0
Newbie
31. 7. 2009   #1
-
0
-

Ahoj,
neví, jak by šlo udělat, aby jsem mohl zadat parametry za nějaký příkaz v Consolovém programu v C#. Mám na mysli něco jako v přík. řádce třeba

ipconfig /all


napadlomě mě, že by to šlo rozdělit pomocí mezery, ale to asi nebude moc optimální :-)

díky za návrhy

Nahlásit jako SPAM
IP: 213.192.60.–
31. 7. 2009   #2
-
0
-

To domitea : Teď si nejsem jistej, jak to myslíš. Chceš ty parametry použít ve svém programu a nebo chceš spustit nějaký program s parametry?

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
Miro17010
Stálý člen
31. 7. 2009   #3
-
0
-

kus ti pomozem:

public static void Main()

{
string Line = Console.ReadLine();
int p = 0;

string Action = "";
while( Line[p] != Char.Parse("("))
{
Action += Line[p].ToString();
p++;
}

string[] prms;
if(Line[p] != Char.Parse(")"))
{
prms = new string[1] { "" };
p++;
}
else
prms = new string[0];

int cp = 0;

while( Line[p] != Char.Parse(")") )
{
if( Line[p] != Char.Parse(",") )
{
prms[cp] += Line[p].ToString();
}
else
{
Array.Resize<string>( ref prms, ++cp + 1 );
prms[cp] = "";
}

p++;
}

Console.WriteLine( Action + " : ");
foreach( string s in prms )
{
Console.WriteLine( s );
}

}
OutPut:
asd( sadsad, gsdf, 5464 )

asd :
sadsad
gsdf
5464

Nahlásit jako SPAM
IP: 85.159.104.–
začinajúci programátor v .Net: C# & OpenTK: OpenGL( pouzivam ), OpenAL( zatial nepouzivam ), OpenCL( este som neskusal )
Miro17010
Stálý člen
31. 7. 2009   #4
-
0
-

To djanosik : on chce vo svojom programe, podla to co pisal

Consolovém programu v C#.

Nahlásit jako SPAM
IP: 85.159.104.–
začinajúci programátor v .Net: C# & OpenTK: OpenGL( pouzivam ), OpenAL( zatial nepouzivam ), OpenCL( este som neskusal )
Miro17010
Stálý člen
31. 7. 2009   #5
-
0
-

To domitea: pritom si mozes dat aj namiesto "(" toto ":". A nezistovat ci je p != ")", ale p < Line.Lenght. Strukturu prikazov mozes mat aku chces, ale musis je vediet napisat( v c# ) :D

Nahlásit jako SPAM
IP: 85.159.104.–
začinajúci programátor v .Net: C# & OpenTK: OpenGL( pouzivam ), OpenAL( zatial nepouzivam ), OpenCL( este som neskusal )
mephi0
Expert
31. 7. 2009   #6
-
0
-

ako napísal djanosik, ak chces spúšťať program s parametrami:
http://www.lmgtfy.com/?q=command+line+arguments+c%23

a ak chceš pracovať v programe, tak to rieš normalne, vstupom z konzoly, v tom nevidim problem, zaleži na tom, aké to má byť zložité:
http://www.java2s.com/Tutorial/CSharp/0280__Development/ReadingConsoleInput.htm

stále platí: čím konkrétnejšia otázka, tym lepšia odpoveď. ;)

Nahlásit jako SPAM
IP: 85.237.232.–
Program nemusi fungovat rychle, staci ze funguje dostatecne rychle.
31. 7. 2009   #7
-
0
-

To Miro1701 : To zadání je v jistých ohledech dovjsmyslné a vzhledem k naprosto nevhodnýmu názvu vlákna je to dost těžký rozlišit.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
Miro17010
Stálý člen
31. 7. 2009   #8
-
0
-

To djanosik : mas, pravdu, ale keby slo o sputenie programu s parametramy, tak by som napisal ako spustit program napisany v c# s parametrami, a tam by uz neslo o to ci to je konzolova aplikacia

Nahlásit jako SPAM
IP: 85.159.104.–
začinajúci programátor v .Net: C# & OpenTK: OpenGL( pouzivam ), OpenAL( zatial nepouzivam ), OpenCL( este som neskusal )
domitea0
Newbie
31. 7. 2009   #9
-
0
-

To Miro1701: Díky tohle jsem potřeboval :)

Myslel jsem parametry ve svém programu. Dám příklad:

dopen /1 2 3


dopen = otevři dveřě
1,.. = číslo dveří

Takto jsem to myslel

Nahlásit jako SPAM
IP: 213.192.60.–
davedpe0
Duch
7. 8. 2009   #10
-
0
-

To domitea :
Jestli myslis spusteni programu s parametry pak ti snad toto pomuze - je to v VB.NET ale počítám, že v C# to bude stejný princip.
Jde o to, že v metodě Main je parametr args, který obsahuje parametry (argumenty) zadané při spuštění programu z příkazové řádky.

Po zkompilování se program spustí např. : program.exe par1 par2



Sub Main(ByVal args() As String)
'*** Kdyz jsou zadany parametry programu pak je precti a uloz do promenych
If args.Length > 0 Then
Select Case args.Length
Case 1 'Je zadan jeden parametr
strPathFile = args(0)
Case 2 'Jsou zadany dva parametry
strPathFile = args(0)
intLogLevel = CInt(args(1).Trim)
Case Else
Console.WriteLine("ERROR Program ma nepovoleny pocet parametru = " & args.Length.ToString & ", spoustim s defaultimi parametry ")
End Select
End If
...

Nahlásit jako SPAM
IP: 62.168.54.–
rudolf_franek0
Stálý člen
11. 8. 2009   #11
-
0
-

At jiz pouziji

Main()
, ci
Main(string[] args)
, porad jeste se mohu dostat k parametrum pres
string[] args = System.Environment.GetCommandLineArgs();

Nahlásit jako SPAM
IP: 90.178.66.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 6 hostů

Podobná vlákna

Parametry — založil paking

Parametry — založil Mara

Metody, parametry — založil Zbiro

Práce s parametry — založil Koja

Program v C - parametry — založil sdfa

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý