Splice 1.5 build: 9470 released: 2010-11-07 Recombine bits of files into new files.. Copyright: (c) 2012 Canadian Mind Products. C++ command line utility. Download from: http://mindprod.com/products3.html#SPLICE ===> Free <=== 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. May be used freely for any purpose but military. For more details on this restriction, see http://mindprod.com/contact/nonmil.html If you include any Canadian Mind Products code in your own applications, your app too must be labeled non-military use only. All C++ source and EXE files code are included. ---- Prerequisites: This program runs under Microsoft Windows from the command line (e.g. Win2K/XP/Vista) ---- Installing on a PC: Download source and executable files to run on your own machine as a standalone utility. 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. ---- Installing on a MacIntosh: Use Safari to download source and executable files to run on your own machine as a standalone utility. The EXE files will not work. You will have to recompile, perhaps making minor changes to the source code. Safari will automatically unpack the zip into ~/Downloads (version 10.5) [or on the Desktop (version 10.4 and earlier)]. First install a recent Java JDK or JVM. See http://mindprod.com/jgloss/installingjava.html. You may optionally move the download tree to a permanent home. ---- Rebuilding: The zip already contains the necessary exe, so unless you modify the program, there is no need to recompile the source or recompile it. Configure.java basedir="E:/" in rebuild.xml to the drive where your files are and tweak rebuild.xml. Use ANT and rebuild.xml, not build.xml, to rebuild and link. ---- Use: SPLICE for "gene" splicing, cutting, copying, inserting and overlaying bits of a file into another. Uses for SPLICE: 1. excising a section of a file. 2. replacing a section of a file. 3. inserting a section into a file. 4. extracting a section of a file. 5. appending a section onto a file. Splice is designed to work on text files. For audio files, you would use an audio editor like GoldWave. For word processing files, you would use the word processor that created the two files. It can be used on binary files in the rare instance just butting the files together is sufficient. SPLICE commands, may be upper or lower case: SPLICE CUT MyFile1.Txt START 6 LENGTH 5 RECSIZE 1024 remove a slice from a file offset 6 length 5 Offsets and lengths are measured in blocks of 1024. SPLICE CUT MyFile1.Txt START 6 LENGTH 5 TO MyFile2.txt RECSIZE 1024 remove a slice from a file offset 6 length 5 and copy it to a new file. SPLICE CUT MyFile1.Txt START 6 LENGTH 5 APPEND MyFile2.txt RECSIZE 1024 remove a slice from a file offset 6 length 5 and copy it to the end of another file. SPLICE CUT MyFile1.Txt START 6 LENGTH 5 OVERLAY MyFile2.txt AT 7 RECSIZE 1024 remove a slice from a file, offset 6 length 5, overlay it on top of another file at offset 7. SPLICE CUT MyFile1.Txt START 6 LENGTH 5 INSERT MyFile2.txt AT 7 RECSIZE 1024 remove a slice from a file, offset 6, length 5, insert at offset 7 in another file SPLICE COPY MyFile1.Txt START 6 LENGTH 5 TO MyFile2.txt RECSIZE 1024 copy a slice from a file offset 6 length 5 to a new file SPLICE COPY MyFile1.Txt START 6 LENGTH 5 APPEND MyFile2.txt RECSIZE 1024 copy a slice from a file offset 6 length 5 to the end of another file. SPLICE COPY MyFile1.Txt START 6 LENGTH 5 OVERLAY MyFile2.txt AT 7 RECSIZE 1024 copy a slice from a file, offset 6 length 5, overlaying it on top of another file at offset 7, replacing the previous data. SPLICE COPY MyFile1.Txt START 6 LENGTH 5 INSERT MyFile2.txt AT 7 RECSIZE 1024 copy a slice from a file, offset 6, length 5, inserting at offset 7 in another file. START defaults to 0 AT defaults to 0 RECSIZE defaults to 1 If length reaches out past the end of the source file, it will be shortened. Target files will be expanded as needed with zeroes. This program may be freely copied and used for any purpose except military. C++ source included. ---- Version History: 1.0 1997-04-27 initial release 1.1 1997-04-28 added APPEND add abbreviations for keywords 1.2 1998-11-08 embed Barker address correct Bulk::move logic so that fromOffset is defined. 1.3 2007-01-04 convert to POSIX, safe char handling lib, long filename support. 1.4 2009-03-11 add ant build script and Visual C++ project build file. 1.5 2010-11-07 fix delete[] bug the compiler did not detect. -30-