aboutsummaryrefslogtreecommitdiff
path: root/include/bin2hex.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/bin2hex.hpp')
-rw-r--r--include/bin2hex.hpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/include/bin2hex.hpp b/include/bin2hex.hpp
new file mode 100644
index 0000000..72b57c1
--- /dev/null
+++ b/include/bin2hex.hpp
@@ -0,0 +1,23 @@
+#pragma once
+
+#include <string>
+
+namespace odhtdb
+{
+ static const char HEX_TABLE[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
+
+ static std::string bin2hex(const char *data, size_t dataSize)
+ {
+ std::string result;
+ result.resize(dataSize * 2);
+
+ for(int i = 0; i < dataSize; ++i)
+ {
+ char c = data[i];
+ result[i * 2 + 0] = HEX_TABLE[(c & 0xF0) >> 4];
+ result[i * 2 + 1] = HEX_TABLE[(c & 0x0F)];
+ }
+
+ return result;
+ }
+}