blob: 53da55923ef03b331a79bb1c88cbe7581f5ba22b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
/*
* String.cpp
*****************************************************************************
* Copyright (C) 2012, bitmovin Softwareentwicklung OG, All Rights Reserved
*
* Email: libdash-dev@vicky.bitmovin.net
*
* This source code and its use and distribution, is subject to the terms
* and conditions of the applicable license agreement.
*****************************************************************************/
#include "String.h"
using namespace dash::helpers;
void String::Split (const std::string &s, char delim, std::vector<std::string>& vector)
{
std::stringstream ss(s);
std::string item;
while(std::getline(ss, item, delim))
vector.push_back(item);
}
void String::Split (const std::string &s, char delim, std::vector<uint32_t>& vector)
{
size_t lengthOfString = s.length();
size_t pos = 0;
size_t i = 0;
uint32_t level = 0;
while (pos != std::string::npos)
{
pos = s.find(delim, i);
if (i < lengthOfString)
{
level = strtoul(s.substr(i, pos-i).c_str(), NULL, 10);
vector.push_back(level);
i = pos + 1;
}
}
}
bool String::ToBool (const std::string &s)
{
if (s == "true" || s == "True" || s == "TRUE")
{
return true;
}
else
{
return false;
}
}
|