Accepting Command Line args

I am new to java and am trying to accept a integer from the command line and am completely stumped? How to a Output a Request for the number and then accept the number from the command line. Thanks

warner: its ok. you will have a better day soon. I have some homework. Can you help me? I post it
My code does not work
     private void test(int number)
          int half =  number/2;
          int copy =  half * 2;
          if (copy = number) System.out.println("odd");
          else System.out.println("even");
     }No matter what number it is always odd

Similar Messages

  • Include command line args in executable jar?

    Hello all,
    I'm trying to package up some software which takes 2 command line args to run (for example, java -jar prog.jar FooBar 3.14159). I'm using a utility called Jar2Exe to wrap it up into an exe (still needs JRE to run, but it's nicer packaging for distribution).
    My question is, how can I included command line arguments in the jar? Or can I? Or, are there any exe-wrapping utilities out there that will allow me to accomplish this?
    Thanks,
    -Thok

    Thok wrote:
    Hello all,
    I'm trying to package up some software which takes 2 command line args to run (for example, java -jar prog.jar FooBar 3.14159). I'm using a utility called Jar2Exe to wrap it up into an exe (still needs JRE to run, but it's nicer packaging for distribution).
    My question is, how can I included command line arguments in the jar? Or can I? Or, are there any exe-wrapping utilities out there that will allow me to accomplish this?
    Thanks,
    -ThokOkay, did some more research... It appears you can't specify command line options in a jar, but if you package it into an exe, you can--depending on what utility you use to wrap it, that is. I downloaded a free one (Launch4j) and it does the trick.
    -Thok

  • Wrong to process command line args in a loop?

    I tried to process my command line args like this:
    int[] rgb = {0,0,0};
              for(int i=1;i<3;i++)
                   rgb[i-1] = Integer.parseInt(args);
    I enter six args where args 1 to 3 are ints and not zero, but rgb[2] always ends up being zero. I had to do away with the loop and write out three assignment statements, but if I had ten or more args that would be a headache! Does anyone know why this is happening? I'm using JDK 1.3.1_15.

    for(int i=0;i<3;i++)
       rgb[i] = Integer.parseInt(args);
    Look closely and make sure you understand the differences between my code and yours:
    * i starts at 0, not 1
    * rgb uses i for index, not i - 1.
    Why would you have rgb using i -1 and args using i?
    Now, if you have an arg [i]before the RGB args, then it would make sense for args' index to be different than rgb's. In that case, you might have i-1 and i, or i and i+1, etc. depending on how you structure your loop.
    The main problem is that you had i=1; i<3, which will go through the loop body for i=1 and i=2 only. Make sure you understand why.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Command line args

    I have this program and I need to use command line args which
    will print ell . this program does this but I am using
    substring instead of command line args.
    public class h11 {
    public static void main (String [] args ) {
    String greeting = "Hello";
    String h11 = greeting . substring (1, 4);
    System.out.println( h11);
    output: ell
    Anyone..

    First off, the index of characters in a String is 0 based so in the string "Hello" you have the following;
    char 0 = "H"
    char 1 = "e"
    char 2 = "l"
    char 3 = "l"
    char 4 = "o"
    String.substring(start, end) is first inclusive and last exclusive so the parameters (1, 4) would return characters 1, 2 & 3 but not 0 or 4.
    To get the whole word Hello (not withstanding that that's the entire string) you would want greeting.substring(0,5) however that would generate an index out of bounds error because 5 isn't a valid index for that string. So, here's a small sample program to show how to do what I think you're after.
    public class ParmsTest{
         public static void main(String[] args){
              if( args.length > 0 ){
                   String parm = null ;
                   int end = 0 ;
                   int start = 0 ;
                   for( int i=0; i< args.length; i++ ){
                        parm = args[i] ;
                        if( parm.length() > 4 ){
                             end = 4;
                        else{
                             end = parm.length() - 1 ;
                        if( end > start ){
                             System.out.println( parm.substring(start, end) ) ;
                        else{
                             System.out.println( "Nothing to get" ) ;
              System.out.println( "Finished processing parameters" ) ;
    }It's a bit more complicated than your sample, but it also checks to see if there were any parameters, and it checks to see if the length we're trying to get is valid. Lastly it checks to see if there was anything to get before trying to print it. If it doesn't find anything to print it prints a message saying so.
    Here's the question I have for you. Why? Why did I go to this trouble?

  • Bash number of command line args....

    Hi,
    Is there a way in bash to get number of command line args ...
    atm I am using $1 but of course if you pass a command like uname -a you need two?
    wondered if there is a $<foo> that ill give number of args passed?
    EDIT looks like '$#' emmmm lets see....

    woah!!! ok thanks ..... $# gives me number of args ... will check it out
    $1 $2 > /tmp/cmd
    messy way.....

  • About Command line args

    there is command line argument fir integer like Integer.parseInt(args[0]); can we write same for "char" and" double" also like "Double.parseDouble" or else......

    this has nothing to do with command line arguments
    but yes, all the primitive wrapper classes can parse back their primitive
    Learn to use the API, it's your friend
    http://java.sun.com/javase/6/docs/api/

  • Sun Studio 12 - Can't specify command line args while profiling

    New to Sun Studio development environment, and having trouble profiling my application. I have specified command-line arguments for both Debug and Release builds in Project/Configuration Properties/Runninjg/Arguments and this works fine when running the project from within the IDE. However when I attempt to profile the application through IDE Advanced/Advanced Profiling/Start, my application is launched with no command line arguments. So far I have been unable to find any place to define command line arguments for the program when run using the profiler. Any insights would be greatly appreciated.
    Regards,
    Chad.

    Yes, there is a bug. I reproduced the problem using a sample project Welcome. If I run it without profiling, the program prints correct arguments:
    Welcome ...
    Arguments:
    1: arg 1
    2: arg 2
    [Press Enter to close window] If I run it with profiling "Advanced->Advanced Profiling->Start", the program prints wrong arguments:
    Running "/export/home/SunStudio/SUNWspro/prod/bin/collect  -d /export/home/nikm/SunStudioProjects/Welcome/nbproject/private/experiments -o test.1.er -A on   -p on  -S on  /export/home/nikm/SunStudioProjects/Welcome/dist/Debug/welcome arg 1 arg 2" in /export/home/nikm/SunStudioProjects/Welcome
    Creating experiment database /export/home/nikm/SunStudioProjects/Welcome/nbproject/private/experiments/test.1.er ...
    Welcome ...
    Arguments:
    1: arg
    2: 1
    3: arg
    4: 2
    5: null
    Run successful. Exit value 0.Note, it got 5 arguments instead of 2.
    So, there are two bugs:
    1. argument with spaces is transformed to several arguments.
    2. a "null" argument is added to the list.
    I'll file this bug and let you know the number.
    A workaround is to ignore the last argument in your
    program if it is "null", but this is a very ugly workaround :-)
    Thanks,
    Nik

  • Passing command line args

    I'm a beginner in java and I need to know now to write the code that takes in a randon number of numbers at the command line and stores them in an array
    ie. the program is called number and when I run it, it has to take in the numbers at the command line
    ie. java numbers 12 13 14 15 19 1
    then these numbers are to be stored in an array
    How can I do this??
    Thanking you
    Tom

    public class Numbers {
        public static void main(String[] args) {
            // Convert to integers
            int[] param = new int[args.length];
            for ( int cnt = 0; cnt < args.length; cnt++ ) {
                try {
                    param[cnt] = Integer.parseInt(args[cnt]);
                } catch (NumberFormatException nfe) {
                    System.err.println("Argument " + cnt + " is not integer, using '-1'");
                    param[cnt] = -1;
            // use integers ...
    }

  • Reading directory path as command line args

    Hello,
    I'm trying to write a simple java web server that serves files from a specified directory over a specified port no. (both specified at the command line).
    I am just wondering if any one has any advice on how to handle the directory argument and how check that it is valid etc.
    Thanks
    Gary

    Take a look at the File class, and the method isDirectory, and exists.
    Kaj

  • Environmental variables as command line args

    Hello, all,
    I would like to pass an environmental variable as a command line argument for a java program.
    Example:
    java MyClass $MY_VARIABLE
    However, it actually passes "$MY_VARIABLE", and not the value of MY_VARIABLE. I know that I can use java -D(MY_VARIABLE=SOMETHING) and get it using System.getProperty ("MY_VARIABLE");
    However, I would prefer it the first way, actually passing the variable inside command line. Is there a way to do this?
    Thank you,
    Elana

    Nevermind... Error in my code... It works
    Thank you

  • Command line args from java to C++

    Hi
    I want to pass command line arguemnts argc and argv from java to C++. I have browsed the net and most of them suggested that I declare the jni statement with jObjectarray.
    I saw an example at http://www.csc.calpoly.edu/~fouzi/crossroads/Arguments.c
    It said
    #include "/home/java/linux/jdk118/include/jni.h"
    #include "Arguments.h"
    #include <stdio.h>
    JNIEXPORT void JNICALL
    Java_Arguments_setArgs (JNIEnv *jenv, jobject job, jobjectArray oarr)
    /* obtain the size the the array with a call to the JNI function
    GetArrayLength()                              */
    jsize argc = (*jenv)->GetArrayLength(jenv, oarr);
    /* Declare a char array for argv */
    char const* argv[128];
    int i;
    for (i = 1; i < argc + 1; i++) {
    /* obtain the current object from the object array */
    jobject myObject = (*jenv)->GetObjectArrayElement(jenv, oarr, i-1);
    /* Convert the object just obtained into a String */
    const char str = (jenv)->GetStringUTFChars(jenv,myObject,0);
    /* Build the argv array */
    argv[i] = str;
    /* print the argv array to the screen */
    printf ("argv[%i] = %s\n",i,argv);
    /* Free up memory to prevent memory leaks */
    (*jenv)->ReleaseStringUTFChars(jenv, myObject, str);
    // Increment argc to ajust the difference between Java and C arguments
    argc++;
    // Call a pipeline simulator function which uses command line arguments
    start(argc,argv);
    return;
    That is what I have where the start method is declared like this:
    void start(int argc, /* Argument count */ char argv[] / Argument strings */) {
    But I get a warning when I build the C routine. The warning arises when I am calling the start method.
    The warning says:
    f:\jni\dsaccess.c(711) : warning C4090: 'function' : different 'const' qualifiers
    f:\jni\dsaccess.c(711) : warning C4024: 'start' : different types for formal and actual parameter 2
    Can you help?
    Thanks
    Lakshmi

    1. Your array building looks bogus: Are you missing an index?
    2. You claim to be calling a "method". Are you? Or is it a subroutine?

  • SQLLDR Command line arg question.

    Is there a way to override , from the command line,
    the table_name of the ...
    INTO TABLE table_name
    ... clause of SQLLDR's LOAD statement?
    ie.
    If my control file looked like this ...
    LOAD DATA
    INFILE *
    APPEND
    INTO TABLE my_table_1
    could I have data loaded into my_table_2 like so ...
    sqlldr scott/tiger@test TABLE=my_table_2
    ... I know that TABLE= will not work. But is there
    a way to do something like this?

    oops! ignore this post

  • Include command line args in jar file

    If I make and executable jar file, how can I make it so that when it runs certain comman line arguments are included

    If by "executable jar" you mean that you want to click the jar and run the program (and are using Windows), then you would have to alter the Windows file association for jar files that Java created, adding those options to the javaw command. Note that that would affect all jars that are run this was.
    If you're willing to use the "javaw -jar" command, then just add the options to the javaw command.

  • How to hide RMAN command line args from "ps -ef" command?

    Hi there
    This is not RMAN question per say but it is related to my RMAN script. Part of this RMAN script is below:
               rman target / catalog ${RMANID}/${RMANPW}@${RMANSID} log=${TMPFILE} << EOF
    While the script is running, if I issue "ps -ef | grep rman" command (from my own user id or as 'oracle' user), I see following:
              oracle   32522 32492 36 15:32 pts/1
    00:00:01 rman target / catalog rman/rman2013@rmancat log=/tmp/oratmp32492
    Is there a way to hide the values of the variables (Id, Pwd, SID) from the "ps -ef" command?
    If not, any other an alternates?
    Best regards

    How to Hide RMAN Passwords when Connecting to a Target Database (Doc ID 183377.1)
    How To Hide Usernames And Passwords In RMAN Logfile (Doc ID 246192.1)

  • Invoke Labview applicatio​n from Command line

    hi,
    I have a labview program which does some analysis on my Test data.
    My application is that,i have a Test sequencer program(Different application) which collects data and stores it in .dat file.
    After this i invoke exe of Labview Analysis program from Test sequencer & i enter the Test data filename as a command line argument.
    My first step in  analysis program is read command line argument(thru App.Args property) & get filename(the command line gives array output , index 0 will be Labview,index 1 will show filename)
    This works absolutely fine.
    I made a copy of this analysis prog to include some more functionalities and renamed it as different Labview program(prog structure is same) & trying to do the same abovesaid process.
    But somehow im not able to get Command line arg(basically here filename) passed to labview.
    The error im getting is that it's showing the path of my application (say if my application is in C)."C:\xxxx.dat is not a LABVIEW data file".
    My question is:
    Is there any settings changes to be done for Command line args property node when we make a copy from one prog to other prog.? Im not having clue why this should occur?
    -Murali

    Just to confirm I understand what you are asking... you copied the App.Args property from one vi to another, compiled the new vi to an exe, new exe doesn't receive the command line parameters.
    Did you make sure the "Pass all command line arguments to application" check box (in the 'Advanced' category of the application builder) was checked for the new application?
    Troy
    CLDEach snowflake in an avalanche pleads not guilty. - Stanislaw J. Lec
    I haven't failed, I've found 10,000 ways that don't work - Thomas Edison
    Beware of the man who won't be bothered with details. - William Feather
    The greatest of faults is to be conscious of none. - Thomas Carlyle

Maybe you are looking for