У меня возникли проблемы с FileStreams. Я в процессе написания последовательного интерфейса C# для проекта FPGA, над которым я работаю, получает пакет (содержащий 16 байт), создает и записывает байты в файл и затем добавляет к созданному файлу.Filestream создать или добавить проблему
Программа не выбрасывает никаких ошибок, но, похоже, не успевает создать файл и не записывает никаких данных.
Любые идеи? Есть ли лучший способ OpenOrAppend файла?
Спасибо заранее, Майкл
private void SendReceivedDataToFile(int sendBytes)
{
if (saveFileCreated == false)
{
FileStream writeFileStream = new FileStream(tbSaveDirectory.Text, FileMode.Create);
writeFileStream.Write(oldData, 0, sendBytes);
writeFileStream.Flush();
writeFileStream.Close();
saveFileCreated = true;
readByteCount = readByteCount + sendBytes;
}
else
{
using (var writeFilestream2 = new FileStream(tbSaveDirectory.Text, FileMode.Append))
{
writeFilestream2.Write(oldData, 0, sendBytes);
writeFilestream2.Flush();
writeFilestream2.Close();
readByteCount = readByteCount + sendBytes;
}
}
if (readByteCount == readFileSize) // all data has been recieved so close file.
{
saveFileCreated = false;
}
}
Спасибо, это полезно знать. Я отслеживаю код, и, похоже, проблема может быть целым числом, которое я передаю для работы. Я буду исследовать дальше. – TheEngineerer
Благодарим за помощь. – TheEngineerer
Хорошо, проблема получается глупо/тривиально. Я установил целое число в неправильное значение (задал его в шестнадцатеричном порядке, поставил то, что хотел, чтобы оно было десятичным.) Благодарим вас за сокращение кода. Очень ценим. – TheEngineerer