46 String[] fields = line.split("\\s+");
47 if (fields.length < 10) {
48 System.err.println("Misconfiged sbcs line <" + line + ">?");
49 continue;
50 }
51 String clzName = fields[0];
52 String csName = fields[1];
53 String hisName = ("null".equals(fields[2]))?null:fields[2];
54 String type = fields[3].toUpperCase();
55 if ("BASIC".equals(type))
56 type = "";
57 else
58 type = "_" + type;
59 String pkgName = fields[4];
60 boolean isASCII = Boolean.valueOf(fields[5]);
61 int b1Min = toInteger(fields[6]);
62 int b1Max = toInteger(fields[7]);
63 int b2Min = toInteger(fields[8]);
64 int b2Max = toInteger(fields[9]);
65 System.out.printf("%s,%s,%s,%b,%s%n", clzName, csName, hisName, isASCII, pkgName);
66 genClass(args[0], args[1], "DoubleByte-X.java",
67 clzName, csName, hisName, pkgName,
68 isASCII, type,
69 b1Min, b1Max, b2Min, b2Max);
70 }
71 }
72
73 private static int toInteger(String s) {
74 if (s.startsWith("0x") || s.startsWith("0X"))
75 return Integer.valueOf(s.substring(2), 16);
76 else
77 return Integer.valueOf(s);
78 }
79
80 private static void outString(Formatter out,
81 char[] cc, int off, int end,
82 String closure)
83 {
84 while (off < end) {
85 out.format(" \"");
86 for (int j = 0; j < 8; j++) {
|
46 String[] fields = line.split("\\s+");
47 if (fields.length < 10) {
48 System.err.println("Misconfiged sbcs line <" + line + ">?");
49 continue;
50 }
51 String clzName = fields[0];
52 String csName = fields[1];
53 String hisName = ("null".equals(fields[2]))?null:fields[2];
54 String type = fields[3].toUpperCase();
55 if ("BASIC".equals(type))
56 type = "";
57 else
58 type = "_" + type;
59 String pkgName = fields[4];
60 boolean isASCII = Boolean.valueOf(fields[5]);
61 int b1Min = toInteger(fields[6]);
62 int b1Max = toInteger(fields[7]);
63 int b2Min = toInteger(fields[8]);
64 int b2Max = toInteger(fields[9]);
65 System.out.printf("%s,%s,%s,%b,%s%n", clzName, csName, hisName, isASCII, pkgName);
66 genClass(args[0], args[1], "DoubleByte-X.java.template",
67 clzName, csName, hisName, pkgName,
68 isASCII, type,
69 b1Min, b1Max, b2Min, b2Max);
70 }
71 }
72
73 private static int toInteger(String s) {
74 if (s.startsWith("0x") || s.startsWith("0X"))
75 return Integer.valueOf(s.substring(2), 16);
76 else
77 return Integer.valueOf(s);
78 }
79
80 private static void outString(Formatter out,
81 char[] cc, int off, int end,
82 String closure)
83 {
84 while (off < end) {
85 out.format(" \"");
86 for (int j = 0; j < 8; j++) {
|