Преобразование двоичных данных в строку [на персидском языке]
Я работаю над системой, которая должна читать двоичный файл, содержащий определенные персидские названия / фондовые инструменты. Мне нужно преобразовать двоичные данные в строку для использования в дальнейших процессах. Я прогуглил это и действительно не нашел решение моей проблемы. Кто-нибудь здесь, кто работал в таком сценарии или знает, как решить эту проблему?
Вот код, который я использую для преобразования байтов в строку (насколько это возможно):
byte[] data = binaryReader.ReadBytes(amountOfData);
string symbolRead = Encoding.ASCII.GetString(data);
К вашему сведению, я пытался изменить свой системный язык на персидский, и это тоже не помогло. Хотя это позволяет мне просматривать уже написанный текст на персидском языке.
Надеемся найти решение.
Благодарю.
2 ответа
Не использовать ASCII
для кодирования. Сначала попробуйте использовать Default
после установки вашей локали; затем попробуйте прямо спросить кого-то, какая кодировка наиболее часто используется для Персии, и используйте эту.
Определите, какая кодировка используется в вашем файле, и используйте соответствующую кодировку вместо Encoding.ASCII.GetString(...)
, Возможные значения могут быть Encoding.UTF8.GetString(...)
или же Encoding.Default.GetString(...)
использовать вашу системную кодировку. Смотрите документацию по классу Encoding для других возможностей.