Programs and Documentation
by: Keith Fenske
Copyright © 2011, 2014 by Keith Fenske. All rights reserved. Send
e-mail to fenske at psc dash consulting dot ca.
Most documentation here is in Adobe Acrobat PDF format. See the
download page for a free copy of Adobe Reader, or this
page for a list of alternative PDF software.
Many computer systems have their own PDF readers.
Java software on this web site is free and has been released under the
General Public License (GPL). The same Java programs will run on Linux,
MacOS, Windows, etc. You may need to download the Java
"run-time environment" first. All
packages are in ZIP
format and include brief installation instructions. See reviews on
GNU General Public License (GPL) programs are free to use, and free to
redistribute as-is without changes. Use of these programs is entirely at
your own risk. The author or authors are not responsible for your ability
or inability to use the programs, or for what may happen if you do use
them. Please read the license
(long and boring) or the frequently
asked questions (FAQ). You must agree to the GPL if you want to make
changes to a program or its accessory files, or to use any file outside
the context intended by the author or authors in their original distribution.
The conditions of the GPL are actually quite generous and are meant to
ensure that you are equally generous.
- Character Map (Java, ZIP, 989
CharMap is a Java 5.0 graphical (GUI) application to display
characters or glyphs in text fonts, and copy those characters to the system
clipboard. Its major purpose is as a visual accessory for word processors
such as Microsoft Word. This Java application can be resized, for text
and the program window, which is important in many languages. Features
are limited to make the application faster and simpler to use. A single
click adds a character to the sample text, and the sample text is automatically
copied to the system clipboard on each click.
- Compare Folders (Java, ZIP,
CompareFolders is a Java 1.4 application to compare two folders to
determine if all files and subfolders are identical. The folders may be
on the same computer, on the local network, or they may be represented
by checksum files. Files or subfolders that are not the same are reported
to the user. Checksum files are used when the original files or folders
are not available. You may generate checksums for files and folders, and
save those checksums in a text file. You may compare two checksum files.
You may compare a checksum file and a folder of files. You may do a complete
comparison of two folders, where each file is compared byte-by-byte, not
- Erase Disk (Java, ZIP, 221 KB)
EraseDisk is a Java 1.4 graphical (GUI) application to erase the empty
space on a hard disk drive or flash drive by creating large temporary files
and filling those files with zeros, ones, or pseudo-random data. Deleted
files that were previously on the disk drive will be overwritten and will
no longer be accessible by normal means. This is sufficient for cleaning up
a disk before it is put in another location, or for performing a moderate
test of the reliability for a disk drive.
- File Checksum (Java, ZIP, 201
FileChecksum is a Java 1.4 application to compute common checksums
for files: CRC32, MD5, and
SHA1. Checksums are small hexadecimal "signatures" for testing whether
or not files have been copied correctly, such as over a network. One person
sends a file along with the checksum computed on the original computer.
A second person calculates a similar checksum for the received file, and
if the two checksums agree, then the received file is assumed to be correct.
Many web sites provide MD5 signatures for their downloads; use this program
to verify files that you download. The MD5 for this ZIP file is
- File Redate Rename (Java,
ZIP, 216 KB)
FileDateName is a Java 1.4 graphical (GUI) application to rename multiple
files or to change their directory dates. The contents of the files are
not changed. Folders and subfolders may be searched recursively. Changes
may be applied to files only, both files and folders, or only the folders.
- Find Duplicate Files
(Java, ZIP, 206 KB)
FindDupFiles is a Java 1.4 application to find duplicate files by searching
for files that have the same size and the same MD5 checksum. It won't find
files that are merely similar, such as two consecutive photos of the same
subject, or two MP3 songs encoded at different times. Possible duplicates
are reported to the user, who can then verify that the files are identical,
either by inspection or by doing a byte-by-byte comparison with the "comp"
command on DOS/Windows or the "cmp" command on Linux. What to do with files
is the user's choice; the program does nothing except report the duplicates.
The probability of two different files having the same size and MD5 checksum
is extremely small.
- Font Rename (Java, ZIP, 264 KB)
FontRename is a Java 1.4 application to rename OpenType and TrueType
font files with their internal "font full name" using only plain text characters
(ASCII) plus an extension for the type (OTF, TTC, TTF), or using the full
Unicode character set in languages like Arabic, Chinese, Japanese, Korean,
and Russian. This gives consistent names to font files, no matter what
their source. The contents of the files are not changed, only the names
in the file directory. Don't use this program on system folders with installed
- Hex File Editor (Java, ZIP,
HexEdit is a Java 1.4 graphical (GUI) application to edit a file as
a stream of hexadecimal
digits, where each 8-bit byte is represented by two 4-bit "nibbles" (the
hex digits). No meaning is attached to the digits, and hence to the contents
of the file, so this editing is very raw. You can insert, delete, or replace
digits or bytes, and you may view an approximate character equivalent of
the digits in plain text (7-bit ASCII). The primary purpose of a hex editor
is to patch or correct specific locations within a file without affecting
the rest of the file, something that most word processors can't do. A secondary
purpose is to view the exact content of files.
- Icon Editor (Java, ZIP, 262 KB)
IconEdit is a Java 1.4 graphical (GUI) application to edit
files for Windows. An icon file can contain more than one image, in more
than one size. Supported sizes are from 8x8 to 255x255 pixels, with standard
sizes of 16x16, 24x24, 32x32, 48x48, and 64x64 pixels. All icons are square.
Colors may be 4-bit (16 colors), 8-bit (256 colors), or 24-bit (millions).
Pixels may be transparent and let the background show through. Macintosh
and Linux users can create FAVICON.ICO files for web pages with this program.
- Plain Text (Java, ZIP, 197 KB)
PlainText is a Java 1.4 graphical (GUI) application to convert Unicode
characters to plain text
characters, for example, to convert left and right quotation marks into
plain quotes for web pages. Since everyone has a different idea about what
"plain text" means, the conversion is controlled by a configuration file
that can be easily edited. The typical sequence of actions is to copy text
from a Unicode-aware application such as Microsoft Word, switch to this
Java application, click the "Paste" and "Convert" buttons, then copy the
converted text to another application that expects a more limited character
- Trim File (Java, ZIP, 171 KB)
TrimFile is a Java 1.4 console application to remove trailing white
space (blanks or tabs) from the end of each line in a plain text file.
Extra spaces commonly accumulate while editing source programs in a graphical
compiler (IDE). They aren't a problem, but they do waste file space and
occasionally affect the appearance of programs. Many character sets (encodings)
are supported, and you may convert between character sets or newline styles.
Small Java utility programs. No formal documentation. No support. Only Java
source code, compiled class files, and a public license (GNU GPL). See the
program comments and/or command-line help for information. Otherwise, you're on
your own. Ability to edit and recompile recommended.
One person's essential utility is another person's indifference. That's why
these programs have no warranty. Don't complain, don't criticize, and if they
aren't what you want, make your changes or go elsewhere. Questions may be
answered on alternate Tuesdays and Thursdays.
- Check Plain Trim (Java, ZIP,
CheckPlainTrim is a Java 1.4 console application to check if files are in
plain text and do not have trailing spaces or tabs (white space) at the end of
lines. Files must be in
the US-ASCII character set as
8-bit bytes. How clean are your source, text files, and XML documents?
- Show Folder Size (Java, ZIP,
ShowFolderSize is a Java 1.4 console application to display the total size
of files in a folder, with or without subfolders included. Redirect output to a
text file, and save
as CSV if
desired (comma-separated values).
- Sort FAT Folder (Java, ZIP,
SortFatFolder is a Java 1.4 console application to sort the directory
entries for a FAT16 or FAT32 file folder. Unlike newer file systems (NTFS), the
FAT file system does not keep directories in alphabetical order. This may be
important on some types of distribution media, e.g., USB thumb drives.
SortFatFolder has more exceptions than a mad squirrel in winter; read the
Copyright © 2011, 2014 by Keith Fenske. All rights
reserved. This page was last revised on Monday, 31 March 2014.