RAR archive tools

A few months back, I became curious about the structure of the RAR file format, used to package compressed and uncompressed files. I was wondering how easy it would be to get direct access to the files inside the RAR archive, mostly for playing back some video files that I had stored in RAR-format. These applications are spinoffs of the Java library that I wrote for handling RAR-archives. (Credits go to Christian Scheurer for his UniquE RAR File Library, which I have studied as a reference)

  1. rarfs (MacFUSE file system module)
  2. JLink RAR extension
  3. Java RAR library

rarfs (MacFUSE file system module)

This is a MacFUSE module that you can use for mounting RAR files in Mac OS X 10.4. I have packaged it as a launcher application (RARMounter.app) that you can open your RAR files with, from the Finder (drag and drop to the application icon), or through the launcher's main window.
Note that ONLY UNCOMPRESSED entries in the RAR file can be read, the others will appear as 0-byte files in the file system. The reason is that the current RAR-decompression algorithm is covered by patents and no open source implementation exists, as far as I know. This however, is enough for opening most highly compressed video files inside RAR archives. Since they don't benefit at all from further compression, they are usually just stored in the RAR. Split archives are also handled (.r01, .r02... as well as .part01.rar, .part02.rar...).

System requirements:

Sice FUSE exists on Linux and FreeBSD as well, I can imagine that rarfs easily can be ported to those platforms. I haven't done so yet, but I might do that in the future.

JLink Extended

Latest version: 1.1 (Feb 11 2009)

JLink is a wonderful application originally written by Albert Seward for serving the KiSS media players DP-500, DP-1000 and DP-1500 with video, audio and images.

This is an enhanced version of JLink capable of reading the contents of uncompressed RAR archives, including split archives, by representing them as folders in the virtual file system.

I have also made some additional fixes including:

You will need to install a Java Runtime Environment to run the program (minimum Java 1.5 / 5.0).

Nothing special is needed to turn on RAR support, it is enabled by default but can be turned off for individual mounts.

Java RAR library

This is the foundation of the two applications above. If you want to use it, beware. It's not well structured and includes a lot of test code, and almost no in-code documentation. It is written using the information that I got from studying the UniquE RAR File Library.

As usual with software like this: It is provided for free with NO WARRANTIES.
All of the software presented on this page is released under the GNU General Public License.

Erik Larsson (e-mail)