JDK 11 jdk.charsets.jmod - Charsets Module

JDK 11 jdk.charsets.jmod is the JMOD file for JDK 11 Charsets module.

JDK 11 Charsets module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\jdk.charsets.jmod.

JDK 11 Charsets module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.

JDK 11 Charsets module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\jdk.charsets.

You can click and view the content of each source code file in the list below.

✍: FYIcenter

sun/nio/cs/ext/ISO2022_CN_GB.java

/*
 * Copyright (c) 2002, 2006, Oracle and/or its affiliates. All rights reserved.
 * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 */

/*
 */

package sun.nio.cs.ext;

import java.nio.charset.Charset;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.nio.charset.CharsetDecoder;
import java.nio.charset.CharsetEncoder;
import java.nio.charset.CoderResult;
import sun.nio.cs.*;
import sun.nio.cs.HistoricallyNamedCharset;

public class ISO2022_CN_GB extends ISO2022 implements HistoricallyNamedCharset
{
    public ISO2022_CN_GB() {
        super("x-ISO-2022-CN-GB",
               ExtendedCharsets.aliasesFor("x-ISO-2022-CN-GB"));
    }

    public boolean contains(Charset cs) {
        // overlapping repertoire of EUC_CN, GB2312
        return ((cs instanceof EUC_CN) ||
                (cs.name().equals("US-ASCII")) ||
                (cs instanceof ISO2022_CN_GB));
    }

    public String historicalName() {
        return "ISO2022CN_GB";
    }

    public CharsetDecoder newDecoder() {
        return new ISO2022_CN.Decoder(this);
    }

    public CharsetEncoder newEncoder() {
        return new Encoder(this);
    }

    private static class Encoder extends ISO2022.Encoder {

        public Encoder(Charset cs)
        {
            super(cs);
            SODesig = new byte[] { '$', ')', 'A'};

            try {
                Charset cset = Charset.forName("EUC_CN"); // GB2312
                ISOEncoder = cset.newEncoder();
            } catch (Exception e) { }
        }

        /*
         * Since ISO2022-CN-GB possesses a CharsetEncoder
         * without the corresponding CharsetDecoder half the
         * default replacement check needs to be overridden
         * since the parent class version attempts to
         * decode 0x3f (?).
         */

        public boolean isLegalReplacement(byte[] repl) {
            // 0x3f is OK as the replacement byte
            return (repl.length == 1 && repl[0] == (byte) 0x3f);
        }
    }
}

sun/nio/cs/ext/ISO2022_CN_GB.java

 

JDK 11 jdk.compiler.jmod - Compiler Tool

JDK 11 jdk.attach.jmod - Attach Module

Download and Use JDK 11

⇑⇑ FAQ for JDK (Java Development Kit)

2018-11-11, 3765👍, 0💬