Aujourd’hui, alors que j’essayais de lire des GeoTIFF en .NET, je me suis retrouvé face au problème suivant, comment convertir un tableau de bytes (byte[]) en String en C# ?

Autant en Java c’est assez simple, autant en C#, la technique du new String(byte[]) ne fonctionne pas…

Pour autant, ce n’est pas vraiment plus dur, il suffit d’avoir les bonnes librairies.

On importe nos dépendances :

1
using System.Text;

Et on traite notre tableau de bytes :

1
2
3
byte[] b = /* votre tableau de bytes */
Encoding enc = Encoding.ASCII;
string maChaine = enc.GetString(b);

Et ce n’est pas plus compliqué, on peut bien entendu changer l’ASCII par autre chose, UTF32, UTF8, Unicode…