FileStream objFs = new FileStream(TPLJ, FileMode.OpenOrCreate,FileAccess.Write);
BinaryWriter objBw = new BinaryWriter(objFs); const int BUFFER_SIZE = 1024;
byte [] arrBuffer = new byte[BUFFER_SIZE];
long startIndex = 0;
long retval = oracleReader.GetBytes(5, startIndex, arrBuffer, 0, BUFFER_SIZE); while ( retval == BUFFER_SIZE)
{
objBw.Write(arrBuffer,0,BUFFER_SIZE); objBw.Flush(); startIndex += BUFFER_SIZE; retval = oracleReader.GetBytes(5, startIndex, arrBuffer, 0, BUFFER_SIZE);
}
objBw.Write(arrBuffer, 0, (int)retval);
objBw.Flush(); objBw.Close(); objFs.Close();
高手给我看看,这段代码有什么问题? 照片字段是Long Raw类型,读出来后写到硬盘上显示不出来?可是别人在自己的机器上运行就没问题?给位给点高见,我都快急死了
BinaryWriter objBw = new BinaryWriter(objFs); const int BUFFER_SIZE = 1024;
byte [] arrBuffer = new byte[BUFFER_SIZE];
long startIndex = 0;
long retval = oracleReader.GetBytes(5, startIndex, arrBuffer, 0, BUFFER_SIZE); while ( retval == BUFFER_SIZE)
{
objBw.Write(arrBuffer,0,BUFFER_SIZE); objBw.Flush(); startIndex += BUFFER_SIZE; retval = oracleReader.GetBytes(5, startIndex, arrBuffer, 0, BUFFER_SIZE);
}
objBw.Write(arrBuffer, 0, (int)retval);
objBw.Flush(); objBw.Close(); objFs.Close();
高手给我看看,这段代码有什么问题? 照片字段是Long Raw类型,读出来后写到硬盘上显示不出来?可是别人在自己的机器上运行就没问题?给位给点高见,我都快急死了
oracle.sql.BLOB blob = (oracle.sql.BLOB) rs.getBlob("blobcontent");
BufferedOutputStream out =
new BufferedOutputStream(blob.getBinaryOutputStream());
BufferedInputStream in = new BufferedInputStream(stream);
int c = -1;
byte[] buffer = new byte[4096];
while ( (c = in.read(buffer)) != -1)
{
out.write(buffer, 0, c);
}
in.close();
out.close();