wtorek, 2 lutego 2016

Check access files (C++ with class)

#include <iostream>
#include <errno.h>
#include <unistd.h>
using namespace std;

class File_Access
{
private:
char *file;
int x;

public:
File_Access(char *text)
{
file=text;

}
void Exist_Access()
{
x=access(file,F_OK);
if(x==0)
cout<<"File - "<<file<<" exists"<<endl;
else 
{
if(errno==ENOENT)
cout<<"File - "<<file<<" not exit"<<endl;
else if(errno==EACCES)
cout<<"File - "<<file<<"  is not accessbility"<<endl;
}

}
void Write_Access()
{
x=access(file,W_OK);
if(x==0)
cout<<"You can write - "<<file<<endl;
else if (errno==EACCES)
cout<<"You can't write (not accessbility) - "<<file<<endl;
else if (errno==EROFS)
cout<<"You can't write (system readonly) - "<<file<<endl;
}
void Read_Access()
{
x=access(file,R_OK);
if(x==0)
cout<<"You can read - "<<file<<endl;
else
cout<<"You can't read (not accessbility) - "<<file<<endl;
}
};

int main(int argc, char** argv)
{
char my_file[100];
cin>>my_file;
File_Access Check_Access(my_file);
Check_Access.Exist_Access();
Check_Access.Read_Access();
Check_Access.Write_Access();

return 0;
}



Brak komentarzy:

Prześlij komentarz