Предполагая, что ваша целевая система является мэйнфреймом IBM или среднего уровня, она полностью поддерживает все кодировки EBCDIC, встроенные в ее JVM, в виде кодировок с именем CPxxxx, соответствующих IBM CCSID (CP обозначает кодовую страницу). Вам нужно будет выполнить переводы на стороне хоста, поскольку на стороне клиента не будет необходимой поддержки кодирования.
Поскольку Unicode - это DBCS и выше и поддерживает каждый известный символ, вы, вероятно, будете использовать несколько кодировок EBCDIC; так что вы скорее всего настроите эти кодировки. Попробуйте использовать только свой клиентский Unicode (UTF-8, UTF-16 и т. Д.), Причем переводы выполняются по мере того, как данные поступают на хост и / или покидают хост-систему.
Кроме необходимости выполнять переводы на стороне хоста, механика такая же, как и для любого перевода Java; например new String (байты, кодировка) и String.getBytes (кодировка), а также различные классы NIO и устройства записи. В действительности нет никакой магии - она ничем не отличается от перевода, скажем, между ISO 8859-x и Unicode или любым другим SBCS (или ограниченной DBCS).
Например:
byte[] ebcdta="Hello World".getBytes("CP037"); // get bytes for EBCDIC codepage 37
Дополнительную информацию можно найти на веб-сайте документации IBM .