/ Forside/ Teknologi / Udvikling / Java / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
java programering
Fra : 234
Vist : 584 gange
50 point
Dato : 29-04-08 21:26

Hej!
Jeg er i gang med bogen " java grundbog i programmering" men , jeg er kommet til en opgave som jeg ikke kan få løst.


public class arg {
public static void main(String args[])
{
int i = 0;

while(i < args.length)
{
System.out.println(args[i]);
i++;

}
}

}
i bogen står der at resultatet skal blive følgende:
tst1 tst2
tst1 tst2

men det kan jeg ikke få det til.

Er der nogen som kan hjælpe mig med mit problem?

 
 
Kommentar
Fra : BertelBrander


Dato : 29-04-08 22:29

Ideen er vist at du skal køre dit "program" med argumenter, så programmet udskriver argumenterne.

Når du har oversat kan du køre programmet:
java -classpath . arg 123 3212

Så vil det skrive
123
3212

Kommentar
Fra : 234


Dato : 01-05-08 14:05

Hej!
Jeg bruger eclipse til at programmere i men , hvordan kører man programmet som argumenter?

Kommentar
Fra : BertelBrander


Dato : 01-05-08 14:31

Jeg ved ikke hvordan man kører programmet med argumenter i eclipse. Jeg har aldrig brugt den.

Du kan køre programmet fra en kommando-prompt, som jeg skrev ovenfor.

Kommentar
Fra : 234


Dato : 01-05-08 14:41

Hvordan gør man det?

Kommentar
Fra : BertelBrander


Dato : 01-05-08 14:45

Du åbner en kommenadoprompt:
Start -> kør -> cmd

Så skiter du til den mappe hvori din .class fil ligger (du skriver det i kommando-prompten):
cd "\programmer\pop og hallo\mit program"

Og kører
java -classpath . arg 123 3212

Kommentar
Fra : 234


Dato : 01-05-08 15:05

Jeg har fundet mappen hvor filen ligger og kopiret det over i cmd men , hvordan gør man resten?



Kommentar
Fra : BertelBrander


Dato : 01-05-08 15:08

Øh, kopieret hvad hvorhen?

Du skal åbne en kommandoprompt som jeg beskrev ovenfor.

Kommentar
Fra : 234


Dato : 01-05-08 15:18

Det har jeg også gjordt!

Kommentar
Fra : 234


Dato : 01-05-08 15:35

Jeg er helt nybegynder inde for faget !
Jeg har åbnet cmd og der står: c:\documents and settings
Hvordan gør man resten?

Kommentar
Fra : BertelBrander


Dato : 01-05-08 17:16

Så skal du skifte til den mappe hvor dit program ligger.
Hvis det f.eks, ligger i mappen
C:\mine programmer\java bog\program 123

Så starter du med at gå et niveau ud, med:
cd ..
Så skulle der gerne stå:
C:\
i prompten.
så skriver du
cd "mine programmer"
så står der
C:\mine programmer\
og du skriver
cd "java bog"
så står der
C:\mine programmer\java bog
osv.
Du kan prøve at køre kommandoen:
help cd
Så fortæller den lidt om hvordan du bruger den kommando

Når du er i mappen hvori programmet ligger kan du køre det med
java -classpath . arg 123 3212

Kommentar
Fra : 234


Dato : 01-05-08 21:32

Hvad mener du i første linie med at gå et niveau ud?

Kommentar
Fra : BertelBrander


Dato : 01-05-08 23:26

Hvis du står i mappen:
c:\some thing\something else\
Og går et niveau ud med kommandoen
cd ..
Kommer du til at stå i mappen:
c:\some thing
Og kører du kommandoen igen står du i:
c:\

Kommentar
Fra : 234


Dato : 02-05-08 22:32

Jeg prøver og se om jeg kan få det til at virke , hvis ikke så vender jeg tilbage.

Kommentar
Fra : 234


Dato : 02-05-08 22:41

Jeg kan ikke få det til at virke!

Kommentar
Fra : 234


Dato : 02-05-08 22:48

Jeg fatter det ikke!

Kommentar
Fra : BertelBrander


Dato : 02-05-08 23:33

Hvad gør du og hvad er resultatet?

Du kunne også se på hvordan man bruger kommandolinie parametre i Eclipse:
http://www.cs.colostate.edu/helpdocs/eclipseCommLineArgs.html

Kommentar
Fra : 234


Dato : 02-05-08 23:42

Jeg gør lige præcis hvad du skriver men , den skriver at stien findes ikke så jeg må jo have angivet den forkerte sti.

Kommentar
Fra : BertelBrander


Dato : 02-05-08 23:47

Hvad hedder den sti som programmet ligger i?
Husk du skal have "" omkring navnet hvis der er mellemrum i navnet.

Måske kan du bruge tab-tasten til at færdiggøre stinavnet for dig, det afhænger af opsætning og windows-version.

Prøv evt at lave et copy & paste af teksten i vinduet.

Kommentar
Fra : 234


Dato : 03-05-08 15:15

Min sti er:
C:\Documents and Settings\Henrik\Dokumenter\USB\usb\src

Kommentar
Fra : BertelBrander


Dato : 03-05-08 16:24

Hvis du åbner en kommando prompt og skriver (copy&paste):

cd "C:\Documents and Settings\Henrik\Dokumenter\USB\usb\src"

Så burde du være i den rigtige mappe (medmindre eclipse lægger .class filen i en anden mappe end der hvor kildekoden ligger.

Kommentar
Fra : 234


Dato : 03-05-08 16:39

jeg prøver lige igen!

Kommentar
Fra : 234


Dato : 03-05-08 16:42

Nu har jeg sat stien ind i cmd prompt men ,der sker ikke noget!

Kommentar
Fra : BertelBrander


Dato : 03-05-08 19:43

Du har skrevet:
cd "stien"
og trykket enter?

Der skal ske noget, der skulle gerne komme til at stå den nye sti inden >

Kommentar
Fra : 234


Dato : 04-05-08 12:45

Det gør det også nu!
Hvad skal jeg så gøre?

Kommentar
Fra : BertelBrander


Dato : 04-05-08 14:20

Så kører du den kommando der afvikler dit program, hvis det hedder "arg" så skal du køre kommandoen:
java -classpath . arg 123 3212

Kommentar
Fra : 234


Dato : 04-05-08 14:33

De tal som står om bag ved arg , hvad betyder de?

Kommentar
Fra : BertelBrander


Dato : 04-05-08 16:57

Det er bare nogle tilfældigt valgte tal som bliver til argumenter i programmet og som programmet vi udskrive.
Det kunne lige så godt være alt andet.

Kommentar
Fra : 234


Dato : 05-05-08 21:21

Det er bare i orden.
Jeg vender tilbage når jeg har prøvet igen.

Kommentar
Fra : 234


Dato : 06-05-08 20:38

Hej!
Når jeg sætter stien ind + java - classpath.? så skriver den nedenstående:

Could not create the Java virtual machine.

Kommentar
Fra : BertelBrander


Dato : 06-05-08 20:54

Jeg går uf fra at "Når jeg sætter stien ind " betyder at du skifter til den mappe hvori dit program ligger?

Angiver du programmets navn også? Skriv gerne hele kommandoen.

Jeg ved ikke hvad fejlen betyder.

Kommentar
Fra : 234


Dato : 07-05-08 17:33

Selve programmet ligger i : C:\Documents and Settings\Henrik\Dokumenter\USB\usb\src

Classpathen ligger i: C:\Documents and Settings\Henrik\Dokumenter\USB\usb\bin

Classpathen hedder arg!

Kommentar
Fra : BertelBrander


Dato : 07-05-08 19:43

Hvis programmet (.class filen) ligger i ...\usb\bin skal du nok skifte til den mappe og køre programmet derfra.

Det du kalder "programmet" er vist det vi andre kalder sourcen (deraf src) eller på gammel dansk kildekoden. I bin mappen ligger den binære udgave af programmet (.class filen).

Jeg tror at det er programmet der hedder arg, path betyder sti og classpath er en stil til programmet, dvs en (eller flere) mappe(r). stien/pathen . er nuværende mappe.

Kommentar
Fra : 234


Dato : 07-05-08 20:44

Jeg prøver igen!
(Øvelse gør mester)

Kommentar
Fra : 234


Dato : 07-05-08 21:08

Nu har jeg fået det til at virke i cmd prompten.

Kommentar
Fra : BertelBrander


Dato : 07-05-08 21:43

Det er vel (mindst) en halv sejr?

Kommentar
Fra : 234


Dato : 09-05-08 15:54

ja det er det men , hvad kan jeg bruge det til?

Kommentar
Fra : cc1960


Dato : 09-05-08 21:21

>>BertelBrander
Du kæmper en brav kamp.
Godt gået.
Jeg føler med dig.


Accepteret svar
Fra : BertelBrander

Modtaget 50 point
Dato : 13-05-08 00:02

Hvad du kan bruge kommandolinie argumenter til?

Hvis du en dag vil lave et program som gør "et eller andet" når brugeren dobbelt-klikker på en fil, får du brug for kommandolinie argumenterne, for dit program modtager netop navnet på filen som argument.

Man kunne også forstille sig at brugeren vil have dit program til at gøre noget bestemt når det starter, f.eks. at åbne maximere, eller connecte til en ftp-server, ville det være praktisk om brugeren kunne fortælle dette med kommando linie argumenter, ved at oprette en genvej og skrive parametrene der.

Godkendelse af svar
Fra : 234


Dato : 13-05-08 06:07

Tak for svaret BertelBrander.

Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177422
Tips : 31962
Nyheder : 719565
Indlæg : 6407886
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste