Вчера я задал аналогичный вопрос о методе filestream, What is the Python equivalent to FileStream in C#?, но теперь я понимаю, что я должен был, вероятно, спрашивать о функции .read.Как реплицировать C# .read (buffer, 0, buffer.Length) в Python
Для контекста я пытаюсь использовать потоковый ответ от мыльного API, который должен выводить CSV-файл. Ответ выводит строку, закодированную в базе 64, и я не знаю, что с ней делать. Также в документации api говорится, что ответ должен быть прочитан буфером-буфером назначения.
Вот контекст в коде. Код был предоставлен документации API,:
byte[] buffer = new byte[4000];
bool endOfStream = false;
int bytesRead = 0;
using (FileStream localFileStream = new FileStream(destinationPath, FileMode.Create, FileAccess.Write))
{
using (Stream remoteStream = client.DownloadFile(jobId, chkFormatAsXml.Unchecked))
{
while (!endOfStream)
{
bytesRead = remoteStream.Read(buffer, 0, buffer.Length);
if (bytesRead > 0)
{
localFileStream.Write(buffer, 0, bytesRead);
totalBytes += bytesRead;
}
else
{
endOfStream = true;
}
}
}
}
Любая помощь будет принята с благодарностью, даже если это просто мне точку в правильном направлении, так как я очень потерял в настоящее время. У меня также был еще один вопрос, связанный сегодня с той же проблемой. Write Streamed Response(file-like object) to CSV file Byte by Byte in Python
Просто сделайте 'remoteStream.read (п)', где 'n' сколько вы хотите прочитать. – DyZ
Спасибо, ты знаешь, как я мог читать один буфер за раз? – jvk777
Что такое «буфер»? Знаете ли вы его размер? Если вы это сделаете, просто прочитайте это много байтов. – DyZ