]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/input_output/string_utilities.h
PAtch by Andreas Gaeb to eliminate NaN's in the location code
[flightgear.git] / src / FDM / JSBSim / input_output / string_utilities.h
index f2dc22090272ddb1480cc4a8edde9a398ab3f76b..b55073f8b910e1504380587ef1988403bdfb9b0f 100644 (file)
@@ -40,12 +40,13 @@ INCLUDES
 
 #include <string>
 #include <vector>
+#include <stdio.h>
 
 /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 DEFINITIONS
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
 
-#define ID_STRINGUTILS "$Id: string_utilities.h,v 1.13 2010/07/07 11:59:48 jberndt Exp $"
+#define ID_STRINGUTILS "$Id: string_utilities.h,v 1.14 2010/08/21 17:13:47 jberndt Exp $"
 
 /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 FORWARD DECLARATIONS
@@ -69,6 +70,8 @@ CLASS DECLARATION
   extern std::string& to_lower(std::string& str);
   extern bool is_number(const std::string& str);
   std::vector <std::string> split(std::string str, char d);
+  extern std::string to_string(int);
+  extern std::string replace(std::string str, const std::string& old, const std::string& newstr);
 #else
   #include <cctype>
 
@@ -148,6 +151,24 @@ CLASS DECLARATION
     return str_array;
   }
 
+  string to_string(int i)
+  {
+    char buffer[32];
+    sprintf(buffer, "%d", i);
+    return string(buffer);
+  }
+
+  string replace(string str, const string& oldstr, const string& newstr)
+  {
+    int old_idx;
+    string temp;
+    old_idx = str.find(oldstr);
+    if (old_idx >= 0) {
+      temp = str.replace(old_idx, 1, newstr);
+    }
+    return temp;
+  }
+
 #endif
 
 //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%