Files
LifeProject/LifeCore/Utils.cpp
T
2025-05-13 02:46:21 +03:00

221 lines
4.0 KiB
C++

#include "Utils.h"
#include <sstream>
extern int8 StringToInt8(const String& str){
int32 val2;
std::stringstream ss;
ss << str;
ss >> val2;
return (int8)val2;
}
extern uint8 StringToUInt8(const String& str)
{
uint32 val2;
//sscanf(str.c_str(), "%hu", &val2);
std::stringstream ss;
ss << str;
ss >> val2;
return (uint8)val2;
}
extern int16 StringToInt16(const String& str)
{
int16 val2;
//sscanf(str.c_str(), "%hi", &val2);
std::stringstream ss;
ss << str;
ss >> val2;
return val2;
}
extern uint16 StringToUInt16(const String& str)
{
uint16 val2;
//sscanf(str.c_str(), "%hu", &val2);
std::stringstream ss;
ss << str;
ss >> val2;
return val2;
}
extern int32 StringToInt32(const String& str)
{
int32 val2;
//sscanf(str.c_str(), "%i", &val2);
std::stringstream ss;
ss << str;
ss >> val2;
return val2;
}
extern uint32 StringToUInt32(const String& str)
{
uint32 val2;
//sscanf(str.c_str(), "%u", &val2);
std::stringstream ss;
ss << str;
ss >> val2;
return val2;
}
extern int64 StringToInt64(const String& str)
{
int64 val2;
//sscanf(str.c_str(), "%l", &val2);
std::stringstream ss;
ss << str;
ss >> val2;
return val2;
}
extern uint64 StringToUInt64(const String& str)
{
uint64 val2;
//sscanf(str.c_str(), "%ul", &val2);
std::stringstream ss;
ss << str;
ss >> val2;
return val2;
}
extern float StringToFloat(const String& str)
{
float val2;
//sscanf(str.c_str(), "%f", &val);
std::stringstream ss;
ss << str;
ss >> val2;
return val2;
}
extern double StringToDouble(const String& str)
{
float val2;
//sscanf(str.c_str(), "%d", &val);
std::stringstream ss;
ss << str;
ss >> val2;
return val2;
}
extern String Int8ToString(int8 value)
{
/*char buffer[16];
memset(buffer,0,16);
sprintf(buffer, "%hi", value);*/
std::stringstream ss;
ss << value;
return ss.str();
}
extern String Int16ToString(int16 value)
{
/*char buffer[16];
memset(buffer,0,16);
sprintf(buffer, "%hi", value);
return String(buffer);*/
std::stringstream ss;
ss << value;
return ss.str();
}
extern String Int32ToString(int32 value)
{
/*char buffer[16];
memset(buffer,0,16);
sprintf(buffer, "%i", value);
return String(buffer);*/
std::stringstream ss;
ss << value;
return ss.str();
}
extern String Int64ToString(int64 value)
{
/*char buffer[32];
memset(buffer,0,32);
sprintf(buffer, "%li", value);
return String(buffer);*/
std::stringstream ss;
ss << value;
return ss.str();
}
extern String UInt8ToString(uint8 value)
{
/*char buffer[16];
memset(buffer,0,16);
sprintf(buffer, "%hu", value);
return String(buffer);*/
std::stringstream ss;
ss << value;
return ss.str();
}
extern String UInt16ToString(uint16 value)
{
/*char buffer[16];
memset(buffer,0,16);
sprintf(buffer, "%hu", value);
return String(buffer);*/
std::stringstream ss;
ss << value;
return ss.str();
}
extern String UInt32ToString(uint32 value)
{
/*char buffer[16];
memset(buffer,0,16);
sprintf(buffer, "%u", value);
return String(buffer);*/
std::stringstream ss;
ss << value;
return ss.str();
}
extern String UInt64ToString(uint32 value)
{
/*char buffer[32];
memset(buffer,0,32);
sprintf(buffer, "%lu", value);
return String(buffer);*/
std::stringstream ss;
ss << value;
return ss.str();
}
extern String FloatToString(float val)
{
/*char buffer[32];
memset(buffer,0,32);
sprintf(buffer, "%f", val);
return String(buffer);*/
std::stringstream ss;
ss << val;
return ss.str();
}
extern String DoubleToString(double val)
{
/*char buffer[64];
memset(buffer,0,64);
sprintf(buffer, "%d", val);
return String(buffer);*/
std::stringstream ss;
ss << val;
return ss.str();
}
extern String BoolToString(bool value)
{
return value == true ? STR("true") : STR("false");
}
extern bool StringToBool(const String& str)
{
String strCopy = str;
std::transform(strCopy.begin(), strCopy.end(), strCopy.begin(), ::tolower);
return str == STR("true") ? true : false;
}