主题:vc++2005 中的_read()
我在一段程序中使用了_read(),但返回读到数据为0,不知道为什么,请大家帮助。
下面是我的代码
unsigned char aaa[256][128];
array<unsigned char>^ aa= gcnew array<unsigned char>(256*128) ;
int fh1;
unsigned int count;
openFileDialog1->InitialDirectory="c:\\";
openFileDialog1->Filter="bmp文件(*bmp)|*.bmp|all file(*.*)|*.*";
openFileDialog1->FilterIndex=2;
openFileDialog1->RestoreDirectory=true;
openFileDialog1->ShowDialog();
array<String^>^ files = openFileDialog1->FileNames;
System::IntPtr^p=Marshal::StringToHGlobalAuto(files->ToString() );
const char*ch=(char*)p->ToPointer();//转换成功OK
fh1 = _open(ch ,_O_RDONLY ); //打开成功
{ if( fh1 == -1 )
label1->Text="111ddddd";
else
label1->Text=openFileDialog1->FileName;//对是否打开进行判断
}
count= _read( fh1,savedata,128*256 );
_close( fh1 );
g1->DrawString(savedata[1][21] .ToString(),this->label1->Font,br1,50,50);
g1->DrawString(count.ToString(),this->label1->Font,br1,50,70);
下面是我的代码
unsigned char aaa[256][128];
array<unsigned char>^ aa= gcnew array<unsigned char>(256*128) ;
int fh1;
unsigned int count;
openFileDialog1->InitialDirectory="c:\\";
openFileDialog1->Filter="bmp文件(*bmp)|*.bmp|all file(*.*)|*.*";
openFileDialog1->FilterIndex=2;
openFileDialog1->RestoreDirectory=true;
openFileDialog1->ShowDialog();
array<String^>^ files = openFileDialog1->FileNames;
System::IntPtr^p=Marshal::StringToHGlobalAuto(files->ToString() );
const char*ch=(char*)p->ToPointer();//转换成功OK
fh1 = _open(ch ,_O_RDONLY ); //打开成功
{ if( fh1 == -1 )
label1->Text="111ddddd";
else
label1->Text=openFileDialog1->FileName;//对是否打开进行判断
}
count= _read( fh1,savedata,128*256 );
_close( fh1 );
g1->DrawString(savedata[1][21] .ToString(),this->label1->Font,br1,50,50);
g1->DrawString(count.ToString(),this->label1->Font,br1,50,70);