C# Professional - Processing Text
Strings and Encoding
String is a type from the
System namespace that is used for most of text related operations.
String type has some specificities compared to other types:
- It is a reference type
- It is immutable, meaning that you cannot change the value of a
- It behaves like a value type
Encoding is used to specify:
- How text is stored in memory
- How text is displayed on screen
Encoding type offers multiple common encodings:
- Default (avoid using this one)
String instances is stored using Unicode 16.
You can include specific Unicode characters in a
String using the syntax
\u03a0 (here it is the pi character for exemple).
As we saw before,
String is immutable, which implies that every time you want to modify a
String, a new instance will be created.
If you have an important number of modifications to do, this can cause a big memory consumption and pressure on the memory.
In order to avoid this scenario, the .Net Framework propose the
StringBuilderclass, which is designed for handling such scenarios.