В этом вопросе
есть проблема, (int)stream.Length
не дает мне правильную длину, она скорее дает размер используемого внутреннего буфера! Мне нужно обновить этот вопрос, потому что это очень важно.
Главный вопрос:
Мне нужно что-то похожее на ReadToEnd или ReadAllBytes, чтобы читать все содержимое MemoryMappedFile с помощью MappedViewAccessor, если я не знаю его размера, как я могу это сделать?
Я искал его, я видел этот вопрос, но это не вещь, которую я ищу:
Как быстро прочитать байты из файла с отображением памяти в .NET?
Старый ответ:
пабе
public static ReadMMFAllBytes(string fileName)
{
using (var mmf = MemoryMappedFile.OpenExisting(fileName))
{
using (var stream = mmf.CreateViewStream())
{
using (BinaryReader binReader = new BinaryReader(stream))
{
return binReader.ReadBytes((int)stream.Length));
}
}
}
}
В этом вопросе:
Длина файла с отображением памяти
Нет точного ответа на точный вопрос! вопрос касается чего-то другого, кроме названия.