Как разархивировать файл, представляющий собой строку Base64, а затем создать этот файл на своем компьютере. Base64 полуC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Гость
 Как разархивировать файл, представляющий собой строку Base64, а затем создать этот файл на своем компьютере. Base64 полу

Сообщение Гость »


Я выполняю следующие действия:

Загрузка файла на сервер, затем получение Base64 из API через Selenium API

Приведенный выше URL-адрес показывает (на Java, а не на C#), как получить содержимое Base64 из загруженного файла на сервере через API, а затем, используя это файловое представление Base64, сохранить его в локальном файле.

Исходный файл (на сервере) находится по следующему URL-адресу:

Файл


Изображение


Он передает представление этого файла в формате BAse64 через API. Я не знаю, как правильно разархивировать, а затем преобразовать этот Base64 в реальный файл и сохранить его на своем локальном компьютере, используя C#. URL-адрес выше показывает только пример Java.

Ответ Base64 выглядит следующим образом:

UEsDBBQACAgIACxiTVcAAAAAAAAAAAAAAAAAAAAAZmlsZV8xLnR4dPNIzcnJ11EIzy/KSVHkAgBQSwcIhJ7otBAAAAAAOAAAAUEsBAhQAFAAICAgALGJNV4Se6LQQAAAADgAAAAoAAAAAAAAAAAAAAAAAGZpbGVfMS50eHR QSwUGAAAAAAEAAQA4AAAASAAAAAAA

Код C#, который я добавил, чтобы попытаться разархивировать и создать настоящий файл на моем локальном компьютере, выглядит следующим образом:

var path = @"c:\seleniumdownloads\transferredandunzippedfile.txt"; byte[] zipBytes = Convert.FromBase64String(base64String); используя (FileStream fs = новый FileStream(path, FileMode.Create)) { fs.Write(zipBytes, 0, zipBytes.Length); } Он создал текстовый файл на моем локальном компьютере, но содержимое текстового файла не совпадало с содержимым исходного файла на сервере. Вместо этого, когда я открыл локальный файл, я получил следующее:


Изображение


Хотя следующий блок кода не имеет отношения к моим вопросам, я все равно включу его. Ниже приведен код C#, который я добавил для получения строки Base64:

DownloadBtn.Click(); динамический json = APIUtils.ExecuteAPIGet(SeleniumGridHubUri + "/session/MySessionID/se/files"); строка fileToDownload = json.value.names[0]; объект bodyOfAPI = новый {имя = fileToDownload}; динамический json2 = APIUtils.ExecuteAPIPost(SeleniumGridHubUri, bodyOfAPI); строка base64String = json2.value.contents; Какой код мне нужно добавить, чтобы он соответствовал содержимому исходного файла на сервере?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»