Je suis en train de faire beaucoup de manipulation de chaîne en C#, et a vraiment besoin de chaînes pour être stocké sur un octet par caractère. C'est parce que j'ai besoin de giga-octets de texte simultanément dans la mémoire et il est à l'origine de basse problèmes de mémoire. Je sais bien que ce texte ne sera jamais contiennent des caractères non-ASCII, donc pour ma part, le fait que le Système de.Chaîne et du Système.Char stocker tout ce que les deux octets par caractère est à la fois inutile et un réel problème.
Je suis sur le point de commencer à coder mon propre CharAscii et StringAscii classes - la chaîne de l'un va tenir ses données sous forme de byte[], et de les exposer à la manipulation de chaînes de méthodes similaires à celles de ce Système.Chaîne. Toutefois, cela semble beaucoup de travail à faire quelque chose qui semble être une très standard de problème, donc je suis vraiment à poster ici pour vérifier qu'il n'y a pas déjà une solution plus facile. Est-il par exemple d'une certaine façon je peux faire Système.Chaîne interne de stocker des données comme UTF8 que je n'ai pas remarqué, ou d'un autre moyen de les contourner le problème?