aboutsummaryrefslogtreecommitdiff
path: root/src/share/classes/sun/io/CharToByteCp834.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/share/classes/sun/io/CharToByteCp834.java')
-rw-r--r--src/share/classes/sun/io/CharToByteCp834.java37
1 files changed, 4 insertions, 33 deletions
diff --git a/src/share/classes/sun/io/CharToByteCp834.java b/src/share/classes/sun/io/CharToByteCp834.java
index 322944873..49f214dfc 100644
--- a/src/share/classes/sun/io/CharToByteCp834.java
+++ b/src/share/classes/sun/io/CharToByteCp834.java
@@ -24,46 +24,17 @@
*/
package sun.io;
-import sun.nio.cs.ext.IBM933;
+import sun.nio.cs.ext.*;
//EBIDIC DBCSONLY Korean
-public class CharToByteCp834 extends CharToByteCp933
-{
+public class CharToByteCp834 extends CharToByteDBCS_ASCII {
+
public CharToByteCp834() {
- super();
+ super((DoubleByte.Encoder)new IBM834().newEncoder());
subBytes = new byte[] {(byte)0xfe, (byte)0xfe};
}
- protected boolean doSBCS() {
- return false;
- }
-
- protected int encodeHangul(char ch) {
- int theBytes = super.encodeHangul(ch);
- if (theBytes == -1) {
- // Cp834 has 6 additional non-roundtrip char->bytes
- // mappings, see#6379808
- if (ch == '\u00b7') {
- return 0x4143;
- } else if (ch == '\u00ad') {
- return 0x4148;
- } else if (ch == '\u2015') {
- return 0x4149;
- } else if (ch == '\u223c') {
- return 0x42a1;
- } else if (ch == '\uff5e') {
- return 0x4954;
- } else if (ch == '\u2299') {
- return 0x496f;
- }
- } else if (((theBytes & 0xff00)>>8) == 0) {
- //SBCS, including 0
- return -1;
- }
- return theBytes;
- }
-
public int getMaxBytesPerChar() {
return 2;
}