2010-04-17 28 views
7

Chcę utworzyć plik, który odczytuje tablicę String, ale początkowo mam tylko tablicę bajtów, więc najpierw chcę ją przekonwertować na tablicę ciągów, więc jak mogę to zrobić.Konwertuj tablicę ciągów na tablicę bajtów

+1

Użyj StreamReader do odczytu ciągów z pliku. File.ReadAllLines() to szybki sposób. –

Odpowiedz

16

Spróbuj tego:

Byte[] bytes = System.Text.Encoding.UTF8.GetBytes(yourString); 

Być może trzeba zmienić się w zależności od character encoding swojego łańcucha - proszę zobaczyć System.Text.Encoding (konkretnie jego właściwości) dla innych kodowań, które są obsługiwane przez tego typu.

Jeśli trzeba iść w drugą stronę (i konwertować Byte[] do String), a następnie zrobić to (rada na kodowanie znaków nadal obowiązuje również tutaj):

String yourString = System.Text.Encoding.UTF8.GetString(yourByteArray); 

Brzmi jak twój API używasz oczekuje String[] i wywołanie GetString dostarczy Ci tylko jednego wystąpienia String, a nie tablicy. Być może coś takiego zadziała dla twojego wywołania API:

String yourString = System.Text.Encoding.UTF8.GetString(yourByteArray); 
someType.ApiCall(new[] { yourString }); 
Powiązane problemy