diff --git a/cpp/src/phonenumbers/regexp_adapter_icu.cc b/cpp/src/phonenumbers/regexp_adapter_icu.cc index d0c42733a..1e713b4a2 100644 --- a/cpp/src/phonenumbers/regexp_adapter_icu.cc +++ b/cpp/src/phonenumbers/regexp_adapter_icu.cc @@ -46,8 +46,7 @@ namespace { // Converts UnicodeString 'source' to a UTF8-formatted std::string. string UnicodeStringToUtf8String(const UnicodeString& source) { string data; - StringByteSink sink(&data); - source.toUTF8(sink); + source.toUTF8String(data); return data; } diff --git a/cpp/src/phonenumbers/stringutil.cc b/cpp/src/phonenumbers/stringutil.cc index 81db23381..403cd401a 100644 --- a/cpp/src/phonenumbers/stringutil.cc +++ b/cpp/src/phonenumbers/stringutil.cc @@ -21,6 +21,9 @@ #include "phonenumbers/stringutil.h" +#include "absl/strings/str_cat.h" + + namespace i18n { namespace phonenumbers { @@ -28,36 +31,21 @@ using std::equal; using std::stringstream; string operator+(const string& s, int n) { // NOLINT(runtime/string) - stringstream stream; - - stream << s << n; string result; - stream >> result; - - return result; -} - -template -string GenericSimpleItoa(const T& n) { - stringstream stream; - - stream << n; - string result; - stream >> result; - + absl::StrAppend(&result,s,n); return result; } string SimpleItoa(int n) { - return GenericSimpleItoa(n); + return absl::StrCat(n); } string SimpleItoa(uint64 n) { - return GenericSimpleItoa(n); + return absl::StrCat(n); } string SimpleItoa(int64 n) { - return GenericSimpleItoa(n); + return absl::StrCat(n); } bool HasPrefixString(const string& s, const string& prefix) {