StringWriter

StringWriter class

Implements a TextWriter that writes information to a string. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

class StringWriter : public System::IO::TextWriter

Methods

MethodDescription
virtual void Close()Closes the stream and releases aquired resources.
void Dispose() overrideReleases all resources used by the current object and closes the undelying stream.
virtual bool Equals(ptr)Compares objects using C# Object.Equals semantics.
static std::enable_if<IsSmartPtr<T1>::value&&IsSmartPtr<T2>::value, bool>::type Equals(T1 const&, T2 const&)Compares reference type objects in C# style.
static std::enable_if<!IsSmartPtr<T1>::value&&!IsSmartPtr<T2>::value, bool>::type Equals(T1 const&, T2 const&)Compares value type objects in C# style.
static bool Equals(float const&, float const&)Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN.
static bool Equals(double const&, double const&)Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN.
virtual bool FastCast(const Details::FastRttiBase&, void **) constFor internal purposes only.
virtual void Flush()Flushes the content of the buffer to the underlying stream.
SharedPtr<Text::Encoding> get_Encoding() overrideReturns the currently used encoding.
virtual SharedPtr<IFormatProvider> get_FormatProvider() constReturns the currently used IFormatProvider object.
IFormatProviderPtr get_FormatProvider()Returns the currently used IFormatProvider object.
virtual System::String get_NewLine() constReturns a line terminator string.
String get_NewLine()Returns a line terminator string.
Detail::SmartPtrCounter * GetCounter()Gets reference counter data structure associated with the object.
virtual int32_t GetHashCode() constAnalog of C# Object.GetHashCode() method. Enables hashing of custom objects.
virtual SharedPtr<Text::StringBuilder> GetStringBuilder()Returns the currently used StringBuilder.
virtual const TypeInfo& GetType() constGets actual type of object. Analog of C# System.Object.GetType() call.
virtual bool Is(const TypeInfo&) constCheck if object represents an instance of type described by targetType. Analog of C# ‘is’ operator.
void Lock()Implements C# lock() statement locking. Call directly or use LockContext sentry object.
virtual ptr MemberwiseClone() constAnalog of C# Object.MemberwiseClone() method. Enables cloning custom types.
Object()Creates object. Initializes all internal data structures.
Object(Object const&)Copy constructor. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses.
Object& operator=(Object const&)Assignment operator. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses.
static bool ReferenceEquals(ptr const&, ptr const&)Compares objects by reference.
static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, T const&)Compares objects by reference.
static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, std::nullptr_t)Reference-compares value type object with nullptr.
bool ReferenceEquals(String const&, std::nullptr_t)Specialization of Object::ReferenceEquals for case of string and nullptr.
bool ReferenceEquals(String const&, String const&)Specialization of Object::ReferenceEquals for case of strings.
int RemovedSharedRefs(int)Decreases shared reference count by specified value.
virtual void set_NewLine(const System::String&)Sets a line terminator string.
virtual void SetTemplateWeakPtr(uint32_t)Set n’th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode.
int SharedCount() constGets current value of shared reference counter.
Object * SharedRefAdded()Increments shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
int SharedRefRemovedSafe()Decrements and returns shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
StringWriter(const System::SharedPtr<Text::StringBuilder>&, const IFormatProviderPtr&)Constructs a new instance of StringWriter using the specified StringBuilder and IFormatProvider.
StringWriter(const System::SharedPtr<Text::StringBuilder>&)Constructs a new instance of StringWriter using the specified StringBuilder and IFormatProvider from the current culture.
StringWriter(const IFormatProviderPtr&)Constructs a new instance of StringWriter using the specified IFormatProvider.
StringWriter()Constructs a new instance of StringWriter using IFormatProvider from the current culture.
String ToString() const overrideReturns the underlying string.
static const TypeInfo& Type()Implements C# typeof(System.Object) construct.
void Unlock()Implements C# lock() statement unlocking. Call directly or use LockContext sentry object.
Detail::SmartPtrCounter * WeakRefAdded()Increments weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
void WeakRefRemoved()Decrements weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
void Write(char_t) overrideWrites the specified character to the stream.
void Write(const ArrayPtr<char_t>&, int32_t, int32_t) overrideWrites the specified subrange of characters from the specified character array to the stream.
void Write(const String&) overrideWrites the specified string to the stream.
virtual void Write(const SharedPtr<Object>&)Writes the string representation of the specified object to the stream.
virtual void Write(bool)Writes the string representation of the specified boolean value to the stream.
virtual void Write(Decimal)Writes the string representation of the specified Decimal object to the stream.
virtual void Write(double)Writes the string representation of the specified double-precision floating point value to the stream.
virtual void Write(int)Writes the string representation of the specified 32-bit integer value to the stream.
virtual void Write(int64_t)Writes the string representation of the specified 64-bit integer value to the stream.
virtual void Write(float)Writes the string representation of the specified single-precision floating point value to the stream.
virtual void Write(uint32_t)Writes the string representation of the specified unsigned 32-bit integer value to the stream.
virtual void Write(uint64_t)Writes the string representation of the specified unsigned 64-bit integer value to the stream.
virtual void Write(const ArrayPtr<char_t>&)Writes all characetrs from the specified array to the stream.
virtual void Write(const char_t *)Writes the specified c-string to the stream.
virtual void Write(const TypeInfo&)Writes the string representation of the specified TypeInfo object to the stream.
void Write(const String&, const TArgs&…)Writes the specified values formatted according to the specified format to the stream.
virtual void WriteLine()Writes line terminator characters to the stream.
virtual void WriteLine(const SharedPtr<Object>&)Writes the string representation of the specified object followed by the line-terminating characters to the stream.
virtual void WriteLine(bool)Writes the string representation of the specified boolean value followed by the line-terminating characters to the stream.
virtual void WriteLine(char_t)Writes the specified character followed by the line-terminating characters to the stream.
virtual void WriteLine(Decimal)Writes the string representation of the specified Decimal object followed by the line-terminating characters to the stream.
virtual void WriteLine(double)Writes the string representation of the specified double-precision floating point value followed by the line-terminating characters to the stream.
virtual void WriteLine(int)Writes the string representation of the specified 32-bit integer value followed by the line-terminating characters to the stream.
virtual void WriteLine(int64_t)Writes the string representation of the specified 64-bit integer value followed by the line-terminating characters to the stream.
virtual void WriteLine(float)Writes the string representation of the specified single-precision floating point value followed by the line-terminating characters to the stream.
virtual void WriteLine(const String&)Writes the specified string followed by the line-terminating characters to the stream.
virtual void WriteLine(uint32_t)Writes the string representation of the specified unsigned 32-bit integer value followed by the line-terminating characters to the stream.
virtual void WriteLine(uint64_t)Writes the string representation of the specified unsigned 64-bit integer value followed by the line-terminating characters to the stream.
virtual void WriteLine(const ArrayPtr<char_t>&)Writes all characetrs from the specified array followed by the line-terminating characters to the stream.
virtual void WriteLine(const ArrayPtr<char_t>&, int32_t, int32_t)Writes the specified subrange of UTF-16 characters from the specified character array followed by the line-terminating characters to the stream.
virtual void WriteLine(const char_t *)Writes the specified c-string followed by the line-terminating characters to the stream.
virtual void WriteLine(const TypeInfo&)Writes the string representation of the specified TypeInfo object followed by the line-terminating characters to the stream.
void WriteLine(const String&, const TArgs&…)Writes the specified values formatted according to the specified format followed by the line-terminating characetrs to the stream.
virtual ~Object()Destroys object. Frees all internal data structures.
virtual ~TextWriter()Destructor.

See Also