1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
// Common/StdInStream.h
#ifndef ZIP7_INC_COMMON_STD_IN_STREAM_H
#define ZIP7_INC_COMMON_STD_IN_STREAM_H
#include <stdio.h>
#include "MyString.h"
#include "MyTypes.h"
class CStdInStream
{
FILE *_stream;
// bool _streamIsOpen;
public:
int CodePage;
CStdInStream(FILE *stream = NULL):
_stream(stream),
// _streamIsOpen(false),
CodePage(-1)
{}
/*
~CStdInStream() { Close(); }
*/
operator FILE *() { return _stream; }
/*
bool Open(LPCTSTR fileName) throw();
bool Close() throw();
*/
// returns:
// false, if ZERO character in stream
// true, if EOF or '\n'
bool ScanAStringUntilNewLine(AString &s);
bool ScanUStringUntilNewLine(UString &s);
// bool ReadToString(AString &resultString);
bool Eof() const throw() { return (feof(_stream) != 0); }
bool Error() const throw() { return (ferror(_stream) != 0); }
int GetChar();
};
extern CStdInStream g_StdIn;
#endif
|