[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[netCDFJava #UMY-837124]: reading data into Array from Variable
- Subject: [netCDFJava #UMY-837124]: reading data into Array from Variable
- Date: Wed, 07 Mar 2012 16:27:58 -0700
Greetings John,
Sorry for the delay. It looks like you are closing the netCDF file before you
try to read in the variable. If you move
makeLatLonGrid(ncfile);
just beneath the netCDF open command, in the`try` block of main, then it works
great:
'public static void main(String[] args){
' String filename = "~/20090513-204500.netcdf.gz";
' NetcdfFile ncfile = null;
' try {
' ncfile = NetcdfFile.open(filename);
' makeLatLonGrid(ncfile);
' } catch (IOException ioe) {
' log("trying to open " + filename, ioe);
' } finally {
' if (null != ncfile) try {
' ncfile.close();
' } catch (IOException ioe) {
' log("trying to close " + filename, ioe);
' }
' }
'}
Cheers!
Sean
> Hi Sean,
>
> Here is my code. I modified it quite a bit so that it should compile for
> you. I attached the data file as well, if that helps. It's probably
> something simple I'm doing/failing to do. Thanks for your help!
> -John
>
> *******************
> package edu.ou.asgbook.segmentation;
>
> import java.io.*;
> import ucar.nc2.*;
> import ucar.ma2.*;
>
> public class read_netcdf {
> private static void log(String msg, IOException ioe){
> System.out.println(msg + ioe.getMessage());
> }
> private static void makeLatLonGrid(NetcdfFile netcdf){
> Variable var = netcdf.findVariable("goesnp_ctype_emiss11_high");
> System.out.println(var.getUnitsString());
> Array arr = null;
> try {
> arr = var.read();
> } catch (IOException e) {
> log("trying to read the variable. ",e);
> e.printStackTrace();
> }
> }
> public static void main(String[] args){
> String filename = "~/20090513-204500.netcdf.gz";
> NetcdfFile ncfile = null;
> try {
> ncfile = NetcdfFile.open(filename);
> } catch (IOException ioe) {
> log("trying to open " + filename, ioe);
> } finally {
> if (null != ncfile) try {
> ncfile.close();
> } catch (IOException ioe) {
> log("trying to close " + filename, ioe);
> }
> }
> makeLatLonGrid(ncfile);
> }
> }
>
> *******************
>
> address@hidden> wrote:
>
> > Greetings John,
> >
> > Would you mind sending the code you wrote, at least the part where you
> > begin to open the dataset through the point of error?
> >
> > Thanks!
> >
> > Sean
> >
> > > Hello,
> > >
> > > I have the latest version of Java and the NetCDF Java library version
> > 4.2.
> > > I'm simply trying to read in a variable from a netcdf file. I can make a
> > > Variable just fine and extract info (e.g. var name, data type), but then
> > > when I try to make an Array out of it with read(), (e.g. arr = var.read()
> > > ), I get the runtime error, "BAD: missing spi:" then the variable name. I
> > > can get attributes just fine, and the shape and type of the data are
> > what I
> > > expect. I view the data in ncview, and it looks fine. A co-worker loaded
> > it
> > > up in McIDAS - V and the log message said: "ucar.nc2.NetcdfFile - Using
> > > IOSP ucar.nc2.iosp.netcdf3.N3raf" if that's pertinent at all. I think I'm
> > > importing all of the proper libraries since I'm not getting a compiler
> > > error, but I'm fairly new to Java, so there could be something I'm
> > missing.
> > > Any help is much appreciated! Let me know if you'd like more info.
> > >
> > > Thanks,
> > > John
> > >
> > >
> > > --
> > >
> > ---------------------------------------------------------------------------------------
> > > John Cintineo
> > > Research Meteorologist
> > > SSEC/CIMSS
> > > University of Wisconsin -- Madison
> > > 1225 W. Dayton St.
> > > Madison, WI 53706
> > >
> > > (608) 890-0619
> > > john.cintineo@ <address@hidden>ssec.wisc.edu
> > >
> > > "My opinions are my own and not representative of
> > > CIMSS, SSEC, NOAA or any affiliates"
> > >
> > >
> >
> >
> > Ticket Details
> > ===================
> > Ticket ID: UMY-837124
> > Department: Support netCDF Java
> > Priority: High
> > Status: Open
> >
> >
>
>
> --
> ---------------------------------------------------------------------------------------
> John Cintineo
> Research Meteorologist
> SSEC/CIMSS
> University of Wisconsin -- Madison
> 1225 W. Dayton St.
> Madison, WI 53706
>
> (608) 890-0619
> john.cintineo@ <address@hidden>ssec.wisc.edu
>
> "My opinions are my own and not representative of
> CIMSS, SSEC, NOAA or any affiliates"
>
>
Ticket Details
===================
Ticket ID: UMY-837124
Department: Support netCDF Java
Priority: Emergency
Status: Open