Как сохранить байт [] в настройках приложения С#
Я пытаюсь сохранить массив байтов (byte []) в настройках приложения С#, который возвращается Просмотр списка объектов.
Может ли кто-нибудь дать мне решение о том, как сохранить массив байтов в настройках приложения С#?
или некоторый трюк о том, как преобразовать байт [] в нечто вроде строки, затем сохранить, а затем извлечь и снова преобразовать его в массив байтов и вернуть его в список объектов.
Ответы
Ответ 1
Один из наиболее распространенных способов сделать строку из массива байтов кодирует их в Base-64:
string encoded = System.Convert.ToBase64String(toEncodeAsBytes);
Использование
byte[] bytes = System.Convert.FromBase64String(encoded);
чтобы вернуть ваши байты.
Ответ 2
Канонический способ сделать это - преобразовать byte[]
в string
через base64 и наоборот.
Ответ 3
Другим способом вы можете преобразовать массив байтов в строку и строку в массив байтов. Вот так:
1)
string asciiString = ASCIIEncoding.ASCII.GetString(byteArray);
byte[] byte = ASCIIEncoding.ASCII.GetBytes(asciiString);
2)
string base64String = System.Convert.ToBase64String(byteArray);
byte[] byte = System.Convert.FromBase64String(base64String);
3)
string utf8String = System.Text.Encoding.UTF8.GetString(byteArray);
byte[] byte = System.Text.Encoding.UTF8.GetBytes(utf8String);
вы также можете использовать System.Text.Encoding.BigEndianUnicode, System.Text.Encoding.Unicode и System.Text.Encoding.UTF32 для преобразования байт-массива в строку и строку в байт-массив.
Надеюсь, это поможет вам.