1 /* |
|
2 * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. |
|
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
|
4 * |
|
5 * This code is free software; you can redistribute it and/or modify it |
|
6 * under the terms of the GNU General Public License version 2 only, as |
|
7 * published by the Free Software Foundation. Oracle designates this |
|
8 * particular file as subject to the "Classpath" exception as provided |
|
9 * by Oracle in the LICENSE file that accompanied this code. |
|
10 * |
|
11 * This code is distributed in the hope that it will be useful, but WITHOUT |
|
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
14 * version 2 for more details (a copy is included in the LICENSE file that |
|
15 * accompanied this code). |
|
16 * |
|
17 * You should have received a copy of the GNU General Public License version |
|
18 * 2 along with this work; if not, write to the Free Software Foundation, |
|
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
|
20 * |
|
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
|
22 * or visit www.oracle.com if you need additional information or have any |
|
23 * questions. |
|
24 */ |
|
25 |
|
26 /* |
|
27 */ |
|
28 |
|
29 package sun.nio.cs.ext; |
|
30 |
|
31 import java.nio.charset.Charset; |
|
32 import java.nio.charset.CharsetDecoder; |
|
33 |
|
34 public class JIS_X_0208_Solaris_Decoder extends DoubleByteDecoder |
|
35 { |
|
36 |
|
37 public JIS_X_0208_Solaris_Decoder(Charset cs) { |
|
38 super(cs, |
|
39 index1, |
|
40 index2, |
|
41 0x21, |
|
42 0x7E); |
|
43 } |
|
44 private final static String innerIndex0= |
|
45 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
46 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
47 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
48 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
49 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
50 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
51 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
52 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
53 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
54 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
55 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
56 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2460\u2461"+ |
|
57 "\u2462\u2463\u2464\u2465\u2466\u2467\u2468\u2469"+ |
|
58 "\u246A\u246B\u246C\u246D\u246E\u246F\u2470\u2471"+ |
|
59 "\u2472\u2473\u2160\u2161\u2162\u2163\u2164\u2165"+ |
|
60 "\u2166\u2167\u2168\u2169\uFFFD\u3349\u3314\u3322"+ |
|
61 "\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D"+ |
|
62 "\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E"+ |
|
63 "\u338E\u338F\u33C4\u33A1\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
64 "\uFFFD\uFFFD\uFFFD\uFFFD\u337B\u301D\u301F\u2116"+ |
|
65 "\u33CD\u2121\u32A4\u32A5\u32A6\u32A7\u32A8\u3231"+ |
|
66 "\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B"+ |
|
67 "\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235"+ |
|
68 "\u2229\u222A\uFFFD\uFFFD\u7E8A\u891C\u9348\u9288"+ |
|
69 "\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45"+ |
|
70 "\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92"+ |
|
71 "\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E"+ |
|
72 "\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164"+ |
|
73 "\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB"+ |
|
74 "\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E"+ |
|
75 "\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC"+ |
|
76 "\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953"+ |
|
77 "\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F"+ |
|
78 "\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53"+ |
|
79 "\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34"+ |
|
80 "\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5"+ |
|
81 "\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6"+ |
|
82 "\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B"+ |
|
83 "\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12"+ |
|
84 "\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929"+ |
|
85 "\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13"+ |
|
86 "\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73"+ |
|
87 "\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F"+ |
|
88 "\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8"+ |
|
89 "\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88"+ |
|
90 "\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F"+ |
|
91 "\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"+ |
|
92 "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3"+ |
|
93 "\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462"+ |
|
94 "\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B"+ |
|
95 "\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A"+ |
|
96 "\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1"+ |
|
97 "\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7"+ |
|
98 "\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362"+ |
|
99 "\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B"+ |
|
100 "\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37"+ |
|
101 "\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F"+ |
|
102 "\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25"+ |
|
103 "\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE"+ |
|
104 "\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A"+ |
|
105 "\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7"+ |
|
106 "\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5"+ |
|
107 "\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF"+ |
|
108 "\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8"+ |
|
109 "\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF"+ |
|
110 "\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857"+ |
|
111 "\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"+ |
|
112 "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70"+ |
|
113 "\u9D6B\uFA2D\u9E19\u9ED1\uFFFD\uFFFD\u2170\u2171"+ |
|
114 "\u2172\u2173\u2174\u2175\u2176\u2177\u2178\u2179"+ |
|
115 "\u3052\u00A6\uFF07\uFF02\u2170\u2171\u2172\u2173"+ |
|
116 "\u2174\u2175\u2176\u2177\u2178\u2179\u2160\u2161"+ |
|
117 "\u2162\u2163\u2164\u2165\u2166\u2167\u2168\u2169"+ |
|
118 "\u3052\u00A6\uFF07\uFF02\u3231\u2116\u2121\u306E"+ |
|
119 "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631"+ |
|
120 "\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00"+ |
|
121 "\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD"+ |
|
122 "\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094"+ |
|
123 "\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215"+ |
|
124 "\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372"+ |
|
125 "\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF"+ |
|
126 "\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10"+ |
|
127 "\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4"+ |
|
128 "\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6"+ |
|
129 "\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8"+ |
|
130 "\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D"+ |
|
131 "\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137"+ |
|
132 "\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE"+ |
|
133 "\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624"+ |
|
134 "\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2"+ |
|
135 "\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0"+ |
|
136 "\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2"+ |
|
137 "\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6"+ |
|
138 "\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"+ |
|
139 "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C"+ |
|
140 "\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007"+ |
|
141 "\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147"+ |
|
142 "\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377"+ |
|
143 "\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426"+ |
|
144 "\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F"+ |
|
145 "\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF"+ |
|
146 "\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A"+ |
|
147 "\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E"+ |
|
148 "\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47"+ |
|
149 "\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448"+ |
|
150 "\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21"+ |
|
151 "\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF"+ |
|
152 "\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76"+ |
|
153 "\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115"+ |
|
154 "\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5"+ |
|
155 "\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259"+ |
|
156 "\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7"+ |
|
157 "\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321"+ |
|
158 "\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357"+ |
|
159 "\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592"+ |
|
160 "\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D"+ |
|
161 "\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927"+ |
|
162 "\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F"+ |
|
163 "\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"+ |
|
164 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
165 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
166 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
167 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
168 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
169 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
170 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
171 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
172 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
173 "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"+ |
|
174 "\uFFFD\uFFFD"; |
|
175 |
|
176 private static final short index1[] = { |
|
177 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
178 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
179 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, |
|
180 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
181 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
182 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
183 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
184 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 0, 0, 0, |
|
185 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
186 0, 0, 0, 6, 7, 8, 9, 10, 0, 0, 0, 0, 0, 0, 0, 0, |
|
187 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
188 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
189 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
190 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
191 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
192 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 |
|
193 }; |
|
194 |
|
195 private final static String index2[] = { |
|
196 innerIndex0 |
|
197 }; |
|
198 |
|
199 protected char convSingleByte(int b) { |
|
200 return REPLACE_CHAR; |
|
201 } |
|
202 |
|
203 |
|
204 static short[] getIndex1() { |
|
205 return index1; |
|
206 } |
|
207 |
|
208 static String[] getIndex2() { |
|
209 return index2; |
|
210 } |
|
211 } |
|