Mail Archives: djgpp/2000/01/13/10:00:01
No, this works like gibberish,
nathan
// program for working out file size
#include <iostream.h>
#include <stdlib.h>
#include <fstream.h>
#include <iomanip.h>
long image=0, matrix_r=0, matrix_c=0, depth=0, i=0;
char if_name[80], of_name[80];
// declare variables
void main(int argc, char **argv)
{
// check for input error
cout << "number of rows:";
cin >> matrix_r;
cout << "number of columns:";
cin >> matrix_c;
cout << "pixel depth (8 or 16):";
cin >> depth;
cout << "output name:";
cin >> of_name;
// input variables
if (!of_name)
{
cout << "File output not specified" << endl;
exit (-1);
}
if (depth!=8 && depth!=16)
{
cout << "wrong depth value, try 8 or 16" << endl;
exit (-1);
}
// error checking
ofstream output(of_name, ios::binary | ios::out );
if (!output)
{
cout << "couldn't open file" << endl;
exit (-1);
}
// open output and check for errors
for (i=1; i<argc; i++)
{
// define for loop
ifstream input(argv[i], ios::binary | ios::in );
if (!input)
{
cout << "couldn't open file" << endl;
exit (-1);
}
// open input and check for error
image = (((matrix_r*matrix_c)*(depth/8))-1);
//work out header length with -1 so that seekg skips the correct no.
bytes
if (image < 0 )
{
cout << "Estimated file size incorrect!!, check matrix size and
depth"<< endl;
exit (-1);
}
//check file and header sizes
input.seekg(-image, ios::end);
// jump header length from begining of while
// this is where big problems start occuring with 16bit files.The images
appear with
// very abnormal grey distributions. Appears to work fine with 8bit
images???
while (!input.eof())
{
char ch;
ch=input.get();
output << ch;
}
// write the rest to output file
cout << "reading file...., size ="<<image <<endl;
input.close();
}
output.close();
}
Martin Stromberg wrote:
>
> Nathan (ucgansj AT ucl DOT ac DOT uk) wrote:
> : This is a multi-part message in MIME format.
> : --------------5138758AE268DEF0F6B08126
> : Content-Type: text/plain; charset=us-ascii
> : Content-Transfer-Encoding: 7bit
>
> : Here is the code,
>
> No here is unreadable gibberish:
>
> : Ly8gcHJvZ3JhbSBmb3Igd29ya2luZyBvdXQgZmlsZSBzaXplDQoNCiNpbmNsdWRlIDxpb3N0
> : cmVhbS5oPg0KI2luY2x1ZGUgPHN0ZGxpYi5oPg0KI2luY2x1ZGUgPGZzdHJlYW0uaD4NCiNp
> : bmNsdWRlIDxpb21hbmlwLmg+DQoNCmxvbmcgaW1hZ2U9MCwgbWF0cml4X3I9MCwgbWF0cml4
> : X2M9MCwgZGVwdGg9MCwgaT0wOw0KY2hhciBpZl9uYW1lWzgwXSwgb2ZfbmFtZVs4MF07DQov
>
> Right,
>
> MartinS
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Nathan Jeffery
Evolutionary Anatomy Unit
Dept. of Anatomy & Developmental Biology
Rockefeller Building, University Street
University College London
London WC1E 6JJ
UK
tel: 0171-209-6215
fax: 0171-209-0346
email: ucgansj AT ucl DOT ac DOT uk
http://evolution.anat.ucl.ac.uk/people/nathan/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Raw text -