001 /* 002 * @(#)SaveFits.java $Revision: 1.1 $ $Date: 2002/05/03 11:52:24 $ 003 * 004 * Copyright (C) 2000 European Southern Observatory 005 * License: GNU General Public License version 2 or later 006 */ 007 package org.eso.fits; 008 009 import java.lang.*; 010 import java.util.*; 011 import java.io.*; 012 import java.text.*; 013 014 /** SaveFits class provides a static main method fto test writing 015 * of FITS cfiles. 016 * @version $Revision: 1.1 $ $Date: 2002/05/03 11:52:24 $ 017 * @author P.Grosbol, DMD/ESO, <pgrosbol@eso.org> 018 */ 019 public class SaveFits{ 020 /** Static method for testing the FITS class library. 021 * 022 * @param argv array of arguments i.e. options of FITS files 023 */ 024 public static void main(String[] argv) { 025 System.out.println("Start SaveFits"); 026 if (argv.length != 1) { 027 System.out.println("Error: must have one argument, input file"); 028 System.exit(1); 029 } 030 031 FitsFile file = null; 032 try { 033 file = new FitsFile(argv[0]); 034 } catch (FitsException e) { 035 System.out.println("Error: is not a FITS file >" + argv[0] + "<"); 036 System.exit(-1); 037 } catch (IOException e) { 038 System.out.println("Error: cannot open file >" + argv[0] + "<"); 039 System.exit(-1); 040 } 041 042 int noHDU = file.getNoHDUnits(); 043 System.out.println("FITS file has " + noHDU + " HDUnits"); 044 045 FitsHDUnit hdu = file.getHDUnit(0); 046 FitsHeader hdr = hdu.getHeader(); 047 FitsKeyword kw = hdr.getKeyword("DATE"); 048 kw.setValue(new Date()); 049 kw.setComment("Date of writting YYYY-MM-DD"); 050 kw = new FitsKeyword("ANY", 124870921578.123,"Just a number"); 051 hdr.addKeyword(kw); 052 kw = new FitsKeyword("ESO.DET.ID", "ID#123443" ,"The Detector ID"); 053 hdr.addKeyword(kw); 054 kw = new FitsKeyword("ATOOLONGKW", 122445,"And an interger"); 055 hdr.addKeyword(kw); 056 kw = new FitsKeyword("ISITTRUE", false,"let's try a boolesn"); 057 hdr.addKeyword(kw); 058 kw = new FitsKeyword(" ",""); 059 hdr.addKeyword(kw); 060 kw = new FitsKeyword("NewDate", new Date(), "Try a Date"); 061 hdr.addKeyword(kw); 062 kw = new FitsKeyword("COMMENT","a small real"); 063 hdr.addKeyword(kw); 064 kw = new FitsKeyword("AN-amall", 0.000000000000012234,"a small real"); 065 hdr.addKeyword(kw); 066 kw = new FitsKeyword(" ",""); 067 hdr.addKeyword(kw); 068 069 try { 070 file.saveFile(); 071 } catch (FitsException e) { 072 System.out.println("Error: FITS problem in writing >" 073 + argv[0] + "<"); 074 System.exit(-1); 075 } catch (IOException e) { 076 System.out.println("Error: cannot write file >" + argv[0] + "<"); 077 System.exit(-1); 078 } 079 080 System.exit(0); 081 } 082 }