CMP File I/O Amanuensis
To view this page, you should have the most recent Java installed
(Java Runtime Environment
. Older versions
have a security flaw.
This Applet will run online in your browser, but it is a hybrid you
can also download, install and run it on your own machine as standalone
application. It will start and run faster if you do that. It will also
work safely even if you have disabled Java in your browser.
This Applet will help you write Java code. Instead of memorising the dozens of
I/O classes and methods, just select what you want to do, and let the amanuensis generate the code, then paste it into
your source. Please pass on bugs and suggestions for improvement. The code is messy, but this just reflects the chaos
in Sun’s design of java.io. It is a bit like doing jig-saw puzzles trying to find ways to fit the classes
together. The asymmetry is astounding.
The 2007-08-05 version was a major rewrite. There are undoubtedly errors in the code it
generates, though I can guarantee all code it generates will at least compile. It is a huge program with fiendishly
baroque interactions. It is perhaps the most difficult to debug and proofread program I have ever written. Please
report any errors in the code in generates or suggestions for improvement.
The File I/O Amanuensis does not yet give you any help with the Java 1.4+
class or the java.nio classes: Buffer, ByteBuffer, ByteOrder, CharBuffer, DoubleBuffer, FloatBuffer, IntBuffer,
LongBuffer, MappedByteBuffer or ShortBuffer.
Nio is particularly useful when you have:
- little endian data.
- large records of which you only need a few fields.
- a need for high performance with non-blocking I/O to read many records at once.
Binary is a compact, machine-friendly, human-unintelligible format. For human readable i/o, Java works with
Strings of characters. You separately convert these to and from internal binary format e.g. int. See the conversion Amanuensis for how.
If, FileIO, the above File I/O Amanuensis signed Java Applet (that can also be run as an application) does not work…
Get New Java Get New Browser
- Often problems can be fixed simply by clicking the reload button on your browser.
- This signed Java Applet (that can also be run as an application) needs 32-bit (not 64-bit) Java 1.6 or later.
For best results use the older 1.7.0_17 not the latest buggy 1.7.0_21.
In the Java Control Panel, configure medium security to allow vanilla unsigned applets to run.
- You also need a recent browser.
- It works under any operating system that supports Java e.g. W2K/XP/W2003/Vista/W2008/W7-32/W7-64/W8-32/W8-64/Linux/LinuxARM/LinuxX86/LinuxX64/Ubuntu/Solaris/SolarisSPARC/SolarisSPARC64/SolarisX86/SolarisX64/OSX
- You should see the Applet hybrid above looking much like this screenshot. If you don’t, the following hints should help you get it working:
- For this Applet hybrid to work, you must click grant/accept to give it permission to let you copy/paste.
If you refuse to grant permission, the program may crash with an inscrutable stack dump on the console complaining about AccessController.checkPermission.
- Optionally, you may permanently install the Canadian Mind Products code-signing certificate so you don’t have to grant each time.
- If the above Applet hybrid appears to freeze-up, click Alt-Esc repeatedly to check for any buried permission dialog box.
- If you have certificate troubles, check the installed certificates and remove or update any obsolete or suspected defective certificates. The only certificate used by this program is mindprodcert2013dsa.cer.
- Especially if this Applet hybrid has worked before, try clearing the browser cache and rebooting.
- To ensure your Java is up to date, check with Wassup. First, download it and run it as an application independent of your browser, then run it online as an Applet to add the complication of your browser.
- If the above Applet hybrid does not work, check the Java console for error messages.
- If the above Applet hybrid does not work, you might have better luck with the downloadable version available below.
- If you are using Mac OS X and would like an improved Look and Feel, download the QuaQua look & feel from randelshofer.ch/quaqua. UnZip the contained quaqua.jar and install it in ~/Library/Java/Extensions or one of the other ext dirs.
- If you are using Microsoft Internet Explorer 7, 8 or 9, try another browser. Seriously. Microsoft has taken great pains, over and over, to screw up Java and every other multi-platform standardisation.
- If you are using Microsoft Internet Explorer 7, 8 or 9, you must click to allow blocked content permission for Active X to run. This also gives permission to Java to run. Click the Information bar, and then click Allow blocked content. Unfortunately, this also allows dangerous ActiveX code to run. However, you must do this in order to get access to perfectly-safe Java Applets running in a sandbox. This is part of Microsoft’s war on Java. Don’t put up with it! Use a different browser.
- If you are using Microsoft Internet Explorer 9, makes sure the Java Plug-In SSV helper add-in is installed and enabled.
If it is not, try reinstalling the Java JRE.
- If you have Windows 7 64-bit
and Internet Explorer 64-bit,
in theory you can use 64-bit Java,
but I never been able to get it to work.
- Try upgrading to a more recent version of your browser, or try a different browser e.g. Firefox, SeaMonkey, Safari or Avant.
- If you still can’t get the program working click HELP for more detail.
- If you can’t get the above Applet hybrid working after trying the advice above and from the HELP button below, have bugs to report or ideas to improve the program or its documentation, please send me an email at.
File I/O Amanuensis
❘ browse source repository
for the current version of File I/O Amanuensis.
Applet to show you how write Java I/O code to read and write files, URLs, HTTP CGI/GET/POST, sockets, StringReaders, resources etc. You select what sort of I/O you need and it generates the Java source code.
for File I/O Amanuensis
Java source, compiled class files, jar and documentation to run on your own machine either as an application or an Applet.
Runs on any OS that supports Java e.g. W2K/XP/W2003/Vista/W2008/W7-32/W7-64/W8-32/W8-64/Linux/LinuxARM/LinuxX86/LinuxX64/Ubuntu/Solaris/SolarisSPARC/SolarisSPARC64/SolarisX86/SolarisX64/OSX.
First install the most recent Java.
To install, extract the zip download with WinZip,
(or similar unzip utility) into any directory you please,
often J:\ — ticking off the
use folder names option.
To check out the corresponding source from the Subversion repository, use the TortoiseSVN repo-browser to
access fileio source in repository with [Tortoise] Subversion client on wush.net/svn/mindprod/com/mindprod/fileio/.
After you have installed the jar, you can run it as an application. Type:
java -jar J:\com\mindprod\fileio\fileio.jar
adjusting as necessary to account for where the jar file is.
download ASP PAD XML program description for the current version of File I/O Amanuensis.
File I/O Amanuensis
Full source included.
You may even include the source code, modified or unmodified
in free/commercial open source/proprietary programs that you write and distribute. Non-military use only.
available on the web at:
optional Replicator mirror
on local hard disk J:
Please email your
feedback for publication
letters to the editor, errors, omissions, typos, formatting errors, ambiguities, unclear
wording, broken/redirected link reports, suggestions to improve this page or comments to
If you want your message, your name or email kept confidential,
not considered for public posting, please explicitly specify that.
Unless you state otherwise,
I will treat your message as a letter to the editor that I may or may not publish
After that, it will be too late to retract it.
If you disagree with something I said, especially when sending an ad-hominem attack,
a rant composed mainly of obscenities or a death threat, please quote the offending passage
and cite the web page where you found it, tell me why
you think it is wrong,
and, if possible, provide some supporting evidence.
I can’t very well fix erroneous or ambiguous text if I can’t find it.
Your face IP:[18.104.22.168]
||You are visitor number