Для моего проекта пользователь отправляет мне кодированный код base64. Мне нужно конвертировать в pdf документ.
Я использую приведенный ниже код для того же.
string AsBase64String = "base64code";
byte[] tempBytes = Convert.FromBase64String(AsBase64String);
File.WriteAllBytes(@"C:\d\hh.pdf", tempBytes);
и это работает успешно, но в некоторых случаях он генерирует PDF. При открытии pdf показывает, что формат недействителен.
Я использую тот же код на указанном ниже онлайн-сайте.
http://www.freeformatter.com/base64-encoder.html
Вставил код и расшифровал его и сохранил как файл и попробуй открыть в pdf. Это дало ту же ошибку. Затем я открываю файл в блокноте, копирую код внутрь и снова расшифровываю его на указанном выше веб-сайте. Затем сохраните его как файл. Когда я открываю второй файл, он успешно открывается.
Шаги, которые я сделал
- Взял код base64 с клиента и расшифровал его с помощью веб-сайта.
- взял расшифрованный код и снова расшифровал
- затем сохранил код и открыл его, и он успешно открылся.
но в большинстве случаев сначала само декодирование успешно открывается в pdf. В редких случаях требовалось двукратное декодирование.
В чем тут может быть подвох. Я новичок в этом декодировании base64. Пожалуйста, пролейте свет на этот вопрос
C# convert byte[] to string
и, если вы все еще застряли, опубликуйте новый вопрос (но на самом деле вы должны найти ответ на него в SO - есть много решений). - person Rob   schedule 16.03.2016byte[]
. 4 Проверьте PDF. 5 Недействительно? Преобразуйтеbyte[]
вstring
. Вернитесь к шагу 2. Здесь не хватает только преобразованияbyte[]
вstring
. - person Rob   schedule 16.03.2016