ParseOptions

ParseOptions类主要用来解析命令行参数,例如
String options[] = { "-v", "-c", "-p", "-r", "-t", "-m" , "-d" };
String values[] = { null, null, null, null, null, null, "None"};
则,values数组中将存储解析后的各个参数的值。
运行实例:
c:/>java snmpget -v v1  -c public  -p 8001 -m rfc1213.txt 202.117.48.33 .1.3.6.1.2.1.1.1.0
中,ParseOptions解析后:
   values[0]存储有命令行参数中的版本号
   values[1]存储有命令行参数中的团体字符串

// Decompiled by Jad v1.5.8f. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
// Source File Name:   ParseOptions.java

import java.io.PrintStream;
import java.util.Vector;

public class ParseOptions
{

    public ParseOptions(String as[], String as1[], String as2[], String s)
    {
        none = "None";
        Vector vector = new Vector();
        usage_string = s;
        for(i = 0; i < as.length; i++)
        {
            for(j = 0; j < as1.length; j++)
            {
                if(!checkOption(as, as1[j], as2[j]))
                    continue;
                as2[j] = option;
                break;
            }

            if(j >= as1.length)
                if(as[i].charAt(0) == '-')
                    usage_error();
                else
                    vector.addElement(as[i]);
        }

        remArgs = new String[vector.size()];
        for(i = 0; i < vector.size(); i++)
            remArgs[i] = (String)vector.elementAt(i);

    }

    private boolean checkOption(String as[], String s, String s1)
    {
        if(as[i].equals(s))
        {
            if(!none.equals(s1))
            {
                if(++i < as.length)
                    option = as[i];
                else
                    usage_error();
            } else
            {
                option = "Set";
            }
            return true;
        } else
        {
            return false;
        }
    }

    public void usage_error()
    {
        System.out.println("Usage: " + usage_string);
        System.exit(1);
    }

    public String remArgs[];
    public String usage_string;
    String none;
    String option;
    int i;
    int j;
}
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值