Visual C++ .NET/Database ADO.net/Blob
Deal with Blob
<source lang="csharp">
- include "stdafx.h"
using namespace System; using namespace System::Data; using namespace System::IO; using namespace System::Data::OleDb; void main() {
OleDbConnection^ myConnection = nullptr; myConnection = gcnew OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Music.mdb"); myConnection->Open(); OleDbCommand^ myCommand = gcnew OleDbCommand("SELECT FileName, MP3 FROM MP3Storage", myConnection); OleDbDataReader^ myReader = myCommand->ExecuteReader(CommandBehavior::SequentialAccess); array<unsigned char>^ buffer = gcnew array<unsigned char>(65536); while ( myReader->Read() ){ String^ fileName = safe_cast<String^>(myReader->GetValue(0)); FileStream^ fileStream = gcnew FileStream(fileName, FileMode::Create); long long bytesRead, position = 0; while ( bytesRead = myReader->GetBytes(1, position, buffer,0, buffer->Length) ){ fileStream->Write(buffer, 0, (int)bytesRead); position += bytesRead; } Console::WriteLine("{0} bytes writte to {1} file",position, fileName); fileStream->Close(); } myConnection->Close();
}
</source>