#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