x500name.java
来自「wendang for java. 124342423 432」· Java 代码 · 共 78 行
JAVA
78 行
package javasec.samples.ch14;// Store an X500 Name and extract its components on demandpublic class X500Name { private String CN, OU, O, L, ST, C; private String name; private char nameChar[]; public X500Name(String s) { if (s == null) throw new IllegalArgumentException("Name can抰 be null"); name = s; } public String getCN() { if (CN == null) CN = parse("CN="); return CN; } public String getOU() { if (OU == null) OU = parse("OU="); return OU; } public String getO() { if (O == null) O = parse("O="); return O; } public String getL() { if (L == null) L = parse("L="); return L; } public String getST() { if (ST == null) ST = parse("ST="); return ST; } public String getC() { if (C == null) C = parse("C="); return C; } // Parse the name for the given target private String parse(String target) { if (nameChar == null) nameChar = name.toCharArray(); char targetChar[] = target.toCharArray(); for (int i = 0; i < nameChar.length; i++) { if (nameChar[i] == targetChar[0]) { // Possible match, check further boolean found = true; // At least so far... for (int j = 0; j < targetChar.length; j++) { try { if (nameChar[i + j] != targetChar[j]) { // No match, continue on... found = false; break; } } catch (ArrayIndexOutOfBoundsException aioobe) { // No match, and nothing left in nameChar return null; } } if (found) { int firstPos = i + targetChar.length; int lastPos; int endChar; if (nameChar[firstPos] == 抃"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?