Практическое руководство. Чтение данных из двоичного файла (C++/CLI)
В следующем примере кода показаны способы чтения данных из двоичного файла. Используются два класса из пространства имен System.IO: FileStream и BinaryReader. Класс FileStream представляет фактический файл. Класс BinaryReader предоставляет интерфейс для потока, который разрешает двоичный доступ.
В следующем примере кода используется файл Data.bin, созданный с помощью кода, приведенного в разделе Практическое руководство. Запись в двоичный файл (C++/CLI).
Пример
// binary_read.cpp
// compile with: /clr
#using<system.dll>
using namespace System;
using namespace System::IO;
int main()
{
String^ fileName = "data.bin";
try
{
FileStream^ fs = gcnew FileStream(fileName, FileMode::Open);
BinaryReader^ br = gcnew BinaryReader(fs);
Console::WriteLine("contents of {0}:", fileName);
while (br->BaseStream->Position < br->BaseStream->Length)
Console::WriteLine(br->ReadInt32().ToString());
fs->Close( );
}
catch (Exception^ e)
{
if (dynamic_cast<FileNotFoundException^>(e))
Console::WriteLine("File '{0}' not found", fileName);
else
Console::WriteLine("Exception: ({0})", e);
return -1;
}
return 0;
}