001 /* @(#)CopyFits.java $Revision: 1.1 $ $Date: 2002/05/03 11:51:29 $ 002 * 003 * Copyright (C) 2002 European Southern Observatory 004 * License: GNU General Public License version 2 or later 005 */ 006 package org.eso.fits; 007 008 import java.lang.*; 009 import java.util.*; 010 import java.io.*; 011 012 /** CopyFits class provides a static main method to test writing 013 * of FITS files by copying an existing FITS file. 014 * 015 * @version $Revision: 1.1 $ $Date: 2002/05/03 11:51:29 $ 016 * @author P.Grosbol, DMD/ESO, <pgrosbol@eso.org> 017 */ 018 public class CopyFits{ 019 /** Static method for testing the FITS class library. 020 * 021 * @param argv array of arguments i.e. options of FITS files 022 */ 023 public static void main(String[] argv) { 024 System.out.println("Start CopyFits"); 025 if (argv.length != 2) { 026 System.err.println("Error: must have two argument> input output"); 027 System.exit(1); 028 } 029 030 FitsFile file = null; 031 try { 032 file = new FitsFile(argv[0]); 033 } catch (FitsException e) { 034 System.err.println("Error: is not a FITS file >" + argv[0] + "<"); 035 System.exit(-1); 036 } catch (IOException e) { 037 System.err.println("Error: cannot open file >" + argv[0] + "<"); 038 System.exit(-1); 039 } 040 041 int noHDU = file.getNoHDUnits(); 042 System.out.println("FITS file has " + noHDU + " HDUnits"); 043 044 try { 045 file.writeFile(argv[1]); 046 } catch (FitsException e) { 047 System.err.println("Error: FITS problem in writing >" 048 + argv[1] + "<"); 049 System.exit(-1); 050 } catch (IOException e) { 051 System.err.println("Error: cannot write file >" + argv[1] + "<"); 052 System.exit(-1); 053 } 054 055 System.out.println("Finish CopyFits"); 056 System.exit(0); 057 } 058 }