[자바] Argument Parser

2022. 4. 10. 23:36프로그래밍

728x90

아규먼트를 읽어 들이는 프로그램을 간단히 만들고 싶을때 사용하면 좋을 듯 한 클래스를 한 번 만들어 보았습니다.

전체 소스 코드는 다음과 같습니다.

package com.tobee.cmd.parser;

public class ArgumentParser {
	private static String nav_argv[];

	static int checkArgs(String check) {
		int i = nav_argv.length;

		while (--i > 0)
			if (check.equalsIgnoreCase(nav_argv[i]))
				return i;
		return 0;
	}

	static void freeArgs() {
		int i = nav_argv.length;
		while (--i > 0) {
			nav_argv[i] = null;
		}
		return;
	}

	static String identifyArgs(final String name) {
		int idx = -1;
		String args = null;

		idx = checkArgs(name) + 1;
		args = nav_argv[idx];

		return args;
	}

	static int setupArgs(String[] argv) {
		String tmp = null;

		nav_argv = argv;

		if ((tmp = identifyArgs("-shpfile")) == null) {
			System.out.println("Can't open right argument");
			return 0;
		}

		System.out.println(tmp);

		if ((tmp = identifyArgs("-locale")) == null) {
			System.out.println("Can't open right argument");
			return 0;
		}

		System.out.println(tmp);

		return 1;
	}

	public static void main(String args[]) {
		setupArgs(args);

		freeArgs();
	}

}

입력은 다음과 같이 진행 하면 됩니다.

출력 결과는 다음과 같습니다.

aa.shp
ko_KR

 

728x90