如何:读取二进制文件 (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;
}