сначала удручающий факт: https://www.base64decode.org/ может делать то, что я хочу.
Я пытаюсь закодировать и декодировать (в и из base64) сгенерированный файл модели (.shm)с помощью инструмента обработки изображений MVTec Halcon, потому что я хочу сохранить его в XML-файле.
Если я открою его, он будет иметь странную форму:
HSTF ÿÿÿÿ¿€ Q¿ÙG®záH?Üä4©±w?Eè}‰@?ð ................
Я использую эти методыкодировать и декодировать его:
public static string Base64Encode(string text)
{
Byte[] textBytes = Encoding.Default.GetBytes(text);
return Convert.ToBase64String(textBytes);
}
public static string Base64Decode(string base64EncodedData)
{
Byte[] base64EncodedBytes = Convert.FromBase64String(base64EncodedData);
return Encoding.Default.GetString(base64EncodedBytes);
}
и вызывать методы из графического интерфейса следующим образом:
var model = File.ReadAllText(@"C:\Users\\Desktop\model_region_nut.txt");
var base64 = ImageConverter.Base64Encode(model);
File.WriteAllText(@"C:\Users\\Desktop\base64.txt", base64);
var modelneu = ImageConverter.Base64Decode(File.ReadAllText(@"C:\Users\\Desktop\base64.txt"));
File.WriteAllText(@"C:\Users\\Desktop\modelneu.txt", modelneu);
мой результат для modelneu:
HSTF ?????? Q??G?z?H???4??w??E?}??@??
, поэтомуВы можете видеть, что есть много пропущенных символов .. Я думаю, что проблема вызвана использованием .Default.
Спасибо за вашу помощь, Мишель