summaryrefslogtreecommitdiff
path: root/zen/string_tools.h
diff options
context:
space:
mode:
authorB Stack <bgstack15@gmail.com>2020-04-18 17:00:42 +0000
committerB Stack <bgstack15@gmail.com>2020-04-18 17:00:42 +0000
commitb4ecf755bad016b0d7fbb277106887f405f6b600 (patch)
tree8cfcea5441be72ad92095a3887ded84d38f9ba11 /zen/string_tools.h
parentMerge branch '10.22' into 'master' (diff)
parentadd upstream 10.23 (diff)
downloadFreeFileSync-b4ecf755bad016b0d7fbb277106887f405f6b600.tar.gz
FreeFileSync-b4ecf755bad016b0d7fbb277106887f405f6b600.tar.bz2
FreeFileSync-b4ecf755bad016b0d7fbb277106887f405f6b600.zip
Merge branch '10.23' into 'master'10.23
add upstream 10.23 See merge request opensource-tracking/FreeFileSync!20
Diffstat (limited to 'zen/string_tools.h')
-rw-r--r--zen/string_tools.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/zen/string_tools.h b/zen/string_tools.h
index 40a4ea52..cd26f5fd 100644
--- a/zen/string_tools.h
+++ b/zen/string_tools.h
@@ -83,6 +83,7 @@ template <class Num, class S> Num stringTo(const S& str);
std::pair<char, char> hexify (unsigned char c, bool upperCase = true);
char unhexify(char high, char low);
+std::string formatAsHexString(const std::string& blob); //bytes -> (human-readable) hex string
template <class S, class T, class Num> S printNumber(const T& format, const Num& number); //format a single number using std::snprintf()
@@ -848,6 +849,20 @@ char unhexify(char high, char low)
}
+inline
+std::string formatAsHexString(const std::string& blob)
+{
+ std::string output;
+ for (const char c : blob)
+ {
+ const auto [high, low] = hexify(c, false /*upperCase*/);
+ output += high;
+ output += low;
+ }
+ return output;
+}
+
+
}
#endif //STRING_TOOLS_H_213458973046
bgstack15