java apache commons

Java apache commons RandomStringUtils サンプルプログラム


RandomStringUtilsの説明(google翻訳)

ランダムな文字列の操作。
現在、プライベート上位サロゲート文字は無視されます。これらは、56192(db80)と56319(dbff)の値の間にあるUnicode文字です。
これは、それらを処理する方法がわからないためです。上位代理人と下位代理人が正しく処理されます。つまり、上位サロゲートがランダムに選択された場合は、55296(d800)から56191(db7f)までの間に低いサロゲートが続きます。低いサロゲートが選択された場合は、56320(dc00)〜57343(dfff)の間でランダムに選択された上位サロゲートの後に配置されます。

サロゲート文字について書かれていますが、#random(int)を利用すると日本語以外の文字コードもでてしますので、文字化けします。
指定文字を指定することの方が多いと思います。

例えばパスワードなど、規約があるものが多く、指定文字を入れると思われます。
ユーザ登録など、初期パスワード自動生成などに役に立ちます。

RandomStringUtils

package jp.pjin.tech.java;

import org.apache.commons.lang3.RandomStringUtils;

public class CommonsExample7 {
	public static void main(String[] args) {
		System.out.println(RandomStringUtils.random(11, "abcdefg12345+-@&"));
		System.out.println(RandomStringUtils.random(11, 'a', 'b', 'c', 'd'));
		System.out.println(RandomStringUtils.randomAlphabetic(12));
		System.out.println(RandomStringUtils.randomAlphanumeric(33));
		System.out.println(RandomStringUtils.randomNumeric(11));
	}
}

指定文字はStringで羅列以外に、charで一文字づつなどあります。
また、英数、英数と数字、数字のみとあらかじめ関数が用意されています。

  • このエントリーをはてなブックマークに追加

PAGE TOP