//--------------------------------------------------------------------- // name: read-byte.ck // desc: example of reading raw bytes from file // NOTE: file must be opened in BINARY mode for this to work //--------------------------------------------------------------------- // default filepath me.dir() + "read-byte.txt" => string filename; // look at command line if( me.args() > 0 ) me.arg(0) => filename; // instantiate FileIO fio; // open a file (in BINARY mode) fio.open( filename, FileIO.READ | FileIO.BINARY ); // ensure it's ok if( !fio.good() ) { cherr <= "can't open file: " <= filename <= " for reading..." <= IO.newline(); me.exit(); } // variable to read into int val; // loop until end while( fio.more() ) { // read the next byte fio.readInt( IO.INT8 ) => val; // optionsss ^^^^^^^ | requires chuck-1.5.0.1 or higher // IO.INT8, IO.INT16, IO.INT32 (default to unsigned) // IO.UINT8, IO.UINT16, IO.UINT32 (explicitly unsigned) // IO.SINT6, IO.SINT16, IO.SINT32 (explicitly signed) // print the value cherr <= val <= IO.newline(); }