13.7. Copying File Contents

PLVfile offers several different programs to copy the contents of a file. You can copy from one file to another, from a file to a PL/SQL table, and from a PL/SQL table to a file. These programs are explained below.

13.7.1. Copying File to File

You can copy the entire contents of one file to another file with a single program call via the fcopy procedure; its header is shown here:

PROCEDURE fcopy 
   (ofile_in IN VARCHAR2,
    nfile_in IN VARCHAR2,
    start_in IN INTEGER := 1,
    end_in IN INTEGER := NULL);

The ofile_in string is the name of the "original" file. The nfile_in string is the name of the "new" file. You can also specify which lines from the original file you want to copy. The start_in value is the number of the first line to copy. The end_in argument is the last line of the file to copy. If the end_in argument is NULL, then all lines from the start_in line to the end of the file are copied.

13.7.2. Copying File to PL/SQL Table

You can copy the contents of a file directly into a PL/SQL table with the file2pstab program. The header for the procedure is:

PROCEDURE file2pstab 
   (file_in IN VARCHAR2,
    table_inout IN OUT PLVtab.vc2000_table,
    rows_out OUT INTEGER);

You specify the name of the file and provide the procedure with a PL/SQL table declared using the PLVtab package. Each line of the file is then copied into consecutive rows in the PL/SQL table. The rows_out argument contains the total number of rows set in the table. If the file is empty, the ...

Get Advanced Oracle PL/SQL Programming with Packages now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.