diff --git a/include/MDE/File.h b/include/MDE/File.h new file mode 100644 index 0000000..046205d --- /dev/null +++ b/include/MDE/File.h @@ -0,0 +1,16 @@ +#ifndef __MDE_FILE_H__ +#define __MDE_FIlE_H__ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +void MDEFileCopy(const char* src, const char* dst); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/MDE/Foundation.h b/include/MDE/Foundation.h index 81070cb..1d1badc 100644 --- a/include/MDE/Foundation.h +++ b/include/MDE/Foundation.h @@ -3,4 +3,6 @@ #include +#include + #endif diff --git a/src/dummy.c b/src/dummy.c deleted file mode 100644 index e69de29..0000000 diff --git a/src/file.c b/src/file.c new file mode 100644 index 0000000..2a8831e --- /dev/null +++ b/src/file.c @@ -0,0 +1,24 @@ +#include + +#include +#include + +void MDEFileCopy(const char* src, const char* dst){ + char buffer[4096]; + FILE* in; + FILE* out; + int r; + if((in = fopen(src, "rb")) == NULL) return; + if((out = fopen(dst, "wb")) == NULL){ + fclose(in); + return; + } + + do{ + r = fread(buffer, 1, sizeof(buffer), in); + fwrite(buffer, 1, r, out); + }while(r == sizeof(buffer)); + + fclose(in); + fclose(out); +}