BWAPI
trunk/bwapi/Util/Source/Util/Strings.h
Go to the documentation of this file.
00001 #pragma once
00002 #define STRING_UTIL_BUFFER_SIZE 100
00003 
00004 #include <string>
00005 #include <vector>
00006 
00007 #include "RectangleArray.h"
00008 
00009 namespace Util
00010 {
00012   class Strings
00013    {
00014      private :
00016        Strings(void);
00017        static char buffer[STRING_UTIL_BUFFER_SIZE];
00018      public :
00024        static std::string intToString(long value);
00035        static unsigned long stringToInt(const std::string &input, const unsigned long begin = 0, const int distance = 9);
00036        static std::string stringToVariableName(const std::string &input);
00037        static void stringToFile(const std::string &input, FILE* f);
00038        static void saveToFile(const std::string &input, const std::string &fileName);
00039        static bool beginsWithNumber(const std::string &input);
00040        static bool endsWithNumber(const std::string &input);
00041        static std::string loadFromFile(FILE* f);
00042        static void loadFromFile(const std::string &fileName,std::string &Target,const long bufferSize);
00043        static std::string UTF8ToWindows1250(const std::string &input);
00044        static std::string Windows1250ToUTF8(const std::string &input);
00045        static std::string trimAll(std::string input);
00046        static std::string trim(std::string input);
00047        static std::string replace(const std::string &input, MultiString* values, const std::string &replacement);
00048        static RectangleArray<char> makeBorder(const RectangleArray<char>& input, bool coordinates = true);
00049        static char FrameCharacters[2][6];
00050        static void makeWindow(RectangleArray<char>& input, 
00051                               unsigned int x, 
00052                               unsigned int y, 
00053                               unsigned int width, 
00054                               unsigned int height, 
00055                               unsigned int frameType = 0);
00056        static void printTo(RectangleArray<char>& input, const std::string& text, unsigned int x, unsigned int y);
00062        static std::string readLine(FILE* f);
00063        static const std::string& dereferenceString(const std::string* const input);
00074        static std::vector<std::string> splitString(const std::string& input,
00075                                                    const std::string& delimiters = " \t");
00076        template <class Type>
00077        std::string getBinary(Type value);
00078        static void skipSpace(const std::string& text, size_t& position);
00080        static std::string readWord(const std::string& text, size_t& position);
00081        static std::string readNumber(const std::string& text, size_t& position);
00082        static std::string ssprintf(const char* format, ...);
00083    };
00084  }
00085 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines