CoreUtils/File.h
2022-08-05 06:18:22 -07:00

42 lines
751 B
C++

#ifndef __File_h__
#define __File_h__
#include <string>
#include <fcntl.h>
#include "ZString.h"
///
/// File
///
/// File abstraction class for accessing local file system files.
///
namespace coreutils {
class File {
public:
File(std::string fileName, int mode = O_RDONLY, int authority = 0664);
File(ZString &fileName, int mode = O_RDONLY, int authority = 0664);
~File();
void setBufferSize(size_t size);
void read();
void write(std::string data);
void write(coreutils::ZString &data);
std::string asString();
char *buffer;
size_t size;
std::string fileName;
private:
void open(std::string fileName, int mode, int authority);
int fd;
};
}
#endif