FileReader

Started by
1 comment, last by Zorbfish 21 years, 7 months ago
I have to write this for class in the next few weeks so I thought I''d do it before my professor assigned it.
  
class CFileSystem{
public:
	fstream m_fFile;
	char    m_cBuffer[8];
	CFileSystem(char cName[]);
	~CFileSystem();
	void write_log_header();
	void line_break();
	void write(char cName[]);
	void close();
};
  
This is a small filesystem (very basic) which writes out to a text file. Then whenever a user inputs a line it writes to the text file as: HH:MM:SS: message My first problem was with the constructor:
  
CFileSystem::CFileSystem(char cName[]){

	m_fFile.open(cName,sizeof(cName),1);
};
  
So when I contruct the class like so, CFileSystem File("input.txt"), nothing happens. Im assuming this is because when I call sizeof() in the constructor it doesnt know the size of the char array cName. Anyone wanna comment? So far the only solution I can come to is adding another param to the constructor, int nSize, and manually setting the size.
Advertisement
Try using strlen() instead of sizeof().
Also i''d prefer to pass the string as a pointer simply like this: CFileSystem::CFileSystem(char *cName);

But i dont know much about c++ streams so i dont know if this helps...

--Helicon56,
Hah... maybe I''ve just been in front of this thing too long I can''t believe I forgot about strlen()

thanks;

This topic is closed to new replies.

Advertisement