From 6289712ceaeef9c5f6d4ae746fe7b754c8e5173e Mon Sep 17 00:00:00 2001 From: Gabriele Contini <contini.mailing@gmail.com> Date: 周日, 13 10月 2019 15:02:19 +0800 Subject: [PATCH] refactoring - locators --- src/library/base/StringUtils.cpp | 20 +++++++++++++++++--- 1 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/library/base/StringUtils.cpp b/src/library/base/StringUtils.cpp index 97675b7..3e34432 100644 --- a/src/library/base/StringUtils.cpp +++ b/src/library/base/StringUtils.cpp @@ -9,6 +9,7 @@ #include "StringUtils.h" #include <iostream> #include <string> +#include <sstream> #include <cstring> #include <algorithm> #include <stdexcept> @@ -42,14 +43,14 @@ int year, month, day; tm tm; if (strlen(timeString) == 8) { - int nfield = sscanf(timeString, "%4d%2d%2d", &year, &month, &day); + const int nfield = sscanf(timeString, "%4d%2d%2d", &year, &month, &day); if (nfield != 3) { throw invalid_argument("Date not recognized"); } } else if (strlen(timeString) == 10) { - int nfield = sscanf(timeString, "%4d-%2d-%2d", &year, &month, &day); + const int nfield = sscanf(timeString, "%4d-%2d-%2d", &year, &month, &day); if (nfield != 3) { - int nfield = sscanf(timeString, "%4d/%2d/%2d", &year, &month, &day); + const int nfield = sscanf(timeString, "%4d/%2d/%2d", &year, &month, &day); if (nfield != 3) { throw invalid_argument("Date not recognized"); } @@ -68,4 +69,17 @@ tm.tm_wday = -1; return mktime(&tm); } + + +const vector<string> split_string(const string& licensePositions,char splitchar) { + std::stringstream streamToSplit(licensePositions); + std::string segment; + std::vector<string> seglist; + + while (std::getline(streamToSplit, segment, splitchar)) { + seglist.push_back(segment); + } + return seglist; +} + } /* namespace license */ -- Gitblit v1.9.1