read equivalent for filebuf?

前端 未结 4 762
萌比男神i
萌比男神i 2021-01-27 05:39
typedef struct {
  char c[20];
  int i;
} header;

void foo(std::string s) {
  std::ifstream ifs(s.c_str(), std::ios_base::binary | std::ios_base::in);
  if (ifs) {
             


        
4条回答
  •  庸人自扰
    2021-01-27 05:56

    Just use basic_istream<>::read() to read raw, unformatted byte data:

    void foo(std::string s) {
      std::ifstream ifs(s.c_str(), std::ios_base::binary | std::ios_base::in);
      if (ifs) {
        char buffer[20];
        if (!ifs.read(buffer, 20)) {
          // Handle error
        }
      }
    }
    

提交回复
热议问题