Из вашего описания, я думаю, вы могли ошибочно предположить, что данные считаны из потока, фактически, во фрагменте кода, поток используется для записи в .
Сначала данные извлекаются из этого вызова
var records = GetData();
А затем данные преобразуются в строку, и строка записывается в BufferedStream
с использованием StreamWriter
,и, наконец, записано в outputStream
.
(BufferedStream
используется в качестве буфера - таким образом, имя 'BufferedStream' - для повышения производительности операции записи.)
Так что одна возможность состоит в том, что outputStream
FileStream
, созданный вызывающим абонентом, и он создается в папке Downloads .
Если это так, вам не нужно передавать outputStream
, фактически, не создавайте его в первую очередь!
После удаления ненужных потоков, этовсе, что вам нужно
var records = GetData();
var x = new StringBuilder();
string stamp = DateTime.Now.ToString("dd-MM-yy_HH-mm-ss", CultureInfo.InvariantCulture);
string fileName = "reportTxt_" + stamp + ".txt";
string path = @"C://Users//***//Documents//";
string path2 = @"C:\Users\***\Documents\";
foreach (var r in records)
{
x.AppendLine(r.ToFixedLengthString());
}
//Create File
System.IO.File.WriteAllText(path + fileName, output);
//Calling Transfer Method
SFTP_Connection(fileName, path2);
//Delete file after transfer
if (File.Exists(path + fileName))
{
File.Delete(path + fileName);
}
Другая возможность - вызов SFTP_Connection
создает промежуточный файл в папке Downloads .Обязательно проверьте выполнение вызова.
Вам нужно войти в (F10 / F11) код, чтобы проверить, на какой строке создается нежелательный файл.