バナーをクリックすれば目次に戻ります
Copyright 1999 Rogue Wave Software
Copyright 1999 Sun Microsystems, Inc.
RWeistream
... ios | |
RWeistream RWbistream ... | |
... RWvistream RWvios |
#include <rw/estream.h> RWeistream estr(cin); // cin の streambuf を使用して // RWeistream を作成します
可搬なストリームと同様、型 char の変数の格納や検索にも注意が必要です。エンディアンストリーム方式は、メソッドの説明で char を文字として扱うことを明記していない限り、char を数として扱います。この区別の例については、このマニュアルの RWpostream の項目を参照してください。あるプラットフォームで整数型で格納されたデータが大きすぎて、受信プラットフォームでその型に収まらないことがあります。その場合は、RWeistream の failbit が設定されます。
メンバー関数 good()、bad()、eof() などを使用して、エンディアンストリームにストリームの状態を問い合わせることができます。
#include <rw/estream.h> #include <fstream.h> main() { ifstream fstr("data.dat"); // 入力ファイルをオープンする RWeistream estr(fstr); // 入力ファイルから RWeistream を作成する // (DOS の場合、RWeistream estr(fstr, ios::binary) int i; float f; double d; estr >> i; // バイナリ形式で格納されている int を、サイズやエンディアン形式に // 関係なく復元する estr >> f >> d; // float と double を、エンディアン形式に関係なく復元する } |
RWeistream(streambuf* s);
RWeistream(istream& str);
virtual int get(); virtual RWvistream& get(char& c); virtual RWvistream& get(unsigned char& c); virtual RWvistream& get(char* v, size_t N); virtual RWvistream& get(unsigned char* v, size_t N);
virtual RWvistream& get(wchar_t& wc);
virtual RWvistream& get(wchar_t* v, size_t N);
virtual RWvistream& get(double* v, size_t N);
virtual RWvistream& get(float* v, size_t N);
virtual RWvistream& get(int* v, size_t N);
virtual RWvistream& get(long* v, size_t N);
virtual RWvistream& get(short* v, size_t N);
virtual RWvistream& get(unsigned short* v, size_t N);
virtual RWvistream& get(unsigned int* v, size_t N);
virtual RWvistream& get(unsigned long* v, size_t N);
virtual RWvistream& getString(char* s, size_t N);
virtual RWvistream& operator>>(char& c);
virtual RWvistream& operator>>(wchar_t& wc);
virtual RWvistream& operator>>(double& d);
virtual RWvistream& operator>>(float& f);
virtual RWvistream& operator>>(int& i);
virtual RWvistream& operator>>(long& l);
virtual RWvistream& operator>>(short& s);
virtual RWvistream& operator>>(unsigned char& c);
virtual RWvistream& operator>>(unsigned short& s);
virtual RWvistream& operator>>(unsigned int& i);
virtual RWvistream& operator>>(unsigned long& l);
RWeostream::EndianstreamEndian();
size_t streamSizeofInt();
size_t streamSizeofLong();
size_t streamSizeofShort();
size_t streamSizeofSizeT();
size_t streamSizeofWchar();