Java Record I/O (JRIO) Overview

(last updated October, 2011)


IBM Java Record I/O (JRIO) is deprecated as of SDK 6.0.1. No new function will be added to any release of IBM Java Record I/O (JRIO).

IBM 31-bit SDK for z/OS, Java Technology Edition, V7.1 and IBM 64-bit SDK for z/OS, Java Technology Edition, V7.1 are planned to be the last releases to support the JRIO component.

We strongly recommend migrating to IBM JZOS Batch Toolkit, which currently has equivalent functionality and will be enhanced with new functions.

For more comprehensive information, refer to the IBM JZOS Batch Toolkit for z/OS SDKs webpage.

For API specifics, refer to IBM JZOS Batch Toolkit API.


Additional JRIO documentation is available in HTML format.

JRIO lets Java applications access traditional OS/390 file systems in addition to the Hierarchical File System (HFS). JRIO makes it easier for Java applications to access records within files and to access file systems through native methods when java.io Application Programming Interfaces (APIs) do not support those file systems.

JRIO is a class library, similar to java.io. While java.io provides byte-oriented or field-oriented access to files, JRIO provides record-oriented access. While java.io provides sequential and random access, JRIO applications read, append, and update records by providing the following types of access:


What JRIO helps you do

JRIO lets record-oriented applications (supporting multiple file systems) run using files on different file systems. It also provides a set of OS/390 native code drivers to access:

JRIO provides indexed I/O access to records within a VSAM Key Sequenced Data Set (KSDS). The VSAM support uses OS/390 native code to provide a set of concrete classes that implement the KeyedAccessRecordFile class. This lets you access records:

JRIO focuses on providing sequential and random I/O access to record-oriented data within non-VSAM sequential data sets and PDS.

The non-VSAM support uses OS/390 native code to provide a set of concrete classes and new directory classes that use underlying non-VSAM physical record files. This includes:

JRIO provides support for sequential and random I/O access to records within HFS files. The HFS support uses pure Java code to provide a set of concrete classes and directory classes that use the underlying java.io.

JRIO also provides navigational support for HFS directories.


Comparing JRIO and java.io

The following table summarizes some differences between java.io and JRIO:

java.io JRIO
stream of bytes or fields stream of records
sequential and random acces sequential, random, and keyed access
binary and text files binary files only -- binary and text fields
concrete classes interfaces, handles, and concrete classes
data input stream nonapplicable

For more information, refer to JRIO frequently asked questions.


Browse z/OS