aboutsummaryrefslogtreecommitdiff
path: root/CST 126/Homework2/Base64Helper.hpp
diff options
context:
space:
mode:
authorrPatrickWarner <[email protected]>2024-04-27 12:57:15 -0700
committerrPatrickWarner <[email protected]>2024-04-27 12:57:15 -0700
commitb7688d74869d4606913f5ff197c19183d0ef0aff (patch)
tree467a6c77bb2d04aa8239fe4f8766b93ed1178084 /CST 126/Homework2/Base64Helper.hpp
parentinit (diff)
downloadhomework-1-reecepwarner-b7688d74869d4606913f5ff197c19183d0ef0aff.tar.xz
homework-1-reecepwarner-b7688d74869d4606913f5ff197c19183d0ef0aff.zip
Added binary file reading function
Diffstat (limited to 'CST 126/Homework2/Base64Helper.hpp')
-rw-r--r--CST 126/Homework2/Base64Helper.hpp58
1 files changed, 58 insertions, 0 deletions
diff --git a/CST 126/Homework2/Base64Helper.hpp b/CST 126/Homework2/Base64Helper.hpp
new file mode 100644
index 0000000..d3e9a5f
--- /dev/null
+++ b/CST 126/Homework2/Base64Helper.hpp
@@ -0,0 +1,58 @@
+#ifndef BASE64_HELPER_HPP
+#define BASE64_HELPER_HPP
+#include <fstream>
+#include <iostream>
+
+inline char* ReadTextFromFile(const char* fileName, char* buffer)
+{
+ return buffer;
+}
+
+inline char* ReadFileAsBinary(const char* fileName, char* buffer)
+{
+ try
+ {
+ //open fstream in input mode, with binary mode
+
+ std::fstream File(fileName, std::ios::in | std::ios::binary);
+
+ if (File.fail())
+ {
+ std::cerr << "Could not open file for binary input: " << fileName;
+ return buffer;
+ }
+ File.seekg(0, std::ios::end);
+ std::streamsize size = File.tellg();
+ File.seekg(0, std::ios::beg);
+
+ delete[] buffer;
+ buffer = nullptr;
+
+
+ buffer = new char[size];
+ File.read(buffer, size);
+ File.close();
+ return buffer;
+ }
+ catch (const std::exception& ex)
+ {
+ std::cerr << "Exception during binary file input. " << fileName
+ << " was not successfully streamed to binary. " <<
+ ex.what();
+ return buffer;
+ }
+}
+
+inline bool WriteFileFromBinary(const char* fileName, const char* buffer)
+{
+ return false;
+}
+
+inline bool WriteTextToFile(const char* fileName, const char* fileContents)
+{
+ return false;
+}
+
+
+
+#endif \ No newline at end of file