Длина потока renci.sshnet.SftpC#

Место общения программистов C#
Anonymous
Длина потока renci.sshnet.Sftp

Сообщение Anonymous »

Я пытаюсь усечь файл на SFTP-сервере, открыв поток и задав длину. В документах указано, что поток будет усечен до указанной длины. Но файл остается неизменным.

Если указанное значение меньше текущей длины потока,
поток усекается и - если текущая позиция больше
новой длины — текущая позиция перемещается в последний байт
потока.

Код: Выделить всё

var _client = new SftpClient("host", "user", "pass");
try
{
_client.Connect();
using (var stream = _client.OpenWrite("\\file2.txt"))
{
stream.SetLength(9);
//stream.Flush(); //no change with or without
}
}
catch (Exception ex)
{
Log(ex.Message);
}
Поток работает, когда я добавляю в файл дополнительные данные или вношу изменения, но он не уменьшается. Поэтому я не могу удалить текст из файла.
Как удалить из файла все байты, превышающие определенную длину?

Sftp-сервер — FileZilla Pro Enterprise


Подробнее здесь: https://stackoverflow.com/questions/787 ... shnet-sftp

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