首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
如何通过ADO.NET读取数据库中的图片?
如何通过ADO.NET读取数据库中的图片?
admin
2019-03-29
91
问题
如何通过ADO.NET读取数据库中的图片?
选项
答案
// Assumes that connection is a valid SqlConnection object. SqlCommand command = new SqlCommand("SELECT pub_id, logo FROM pub_info", connection); // Writes the BLOB to a file (*.bmp). FileStream stream; // Streams the BLOB to the FileStream object. BinaryWriter writer; // Size of the BLOB buffer. int bufferSize = 100; // The BLOB byte[] buffer to be filled by GetBytes. byte[] outByte = new byte[bufferSize]; // The bytes returned from GetBytes. long retval; // The starting position in the BLOB output. long startIndex = 0; // The publisher id to use in the file name. string pubID = ""; // Open the connection and read data into the DataReader. connection.Open(); SqlDataReader reader = command.ExecuteReader(CommandBehavior.SequentialAccess); while (reader.Read()){ // Get the publisher id, which must occur before getting the logo. pubID = reader.GetString(0); // Create a file to hold the output. stream = new FileStream("logo" + pubID + ".bmp", FileMode.OpenOrCreate, FileAccess.Write); writer = new BinaryWriter(stream); // Reset the starting byte for the new BLOB. startIndex = 0; // Read bytes into outByte[] and retain the number of bytes returned. retval = reader.GetBytes(1, startIndex, outByte, 0, bufferSize); // Continue while there are bytes beyond the size of the buffer. while (retval == bufferSize) { writer.Write(outByte); writer.Flush(); // Reposition start index to end of last buffer and fill buffer. startIndex += bufferSize; retval = reader.GetBytes(1, startIndex, outByte, 0, bufferSize); } // Write the remaining buffer. writer.Write(outByte, 0, (int)retval - 1); writer.Flush(); // Close the output file. writer.Close(); stream.Close(); }// Close the reader and the connection. reader.Close(); connection.Close();
解析
转载请注明原文地址:https://jikaoti.com/ti/yag7FFFM
0
程序员面试
相关试题推荐
Theimmunesystemisequalincomplexitytothecombinedintricaciesofthebrainandnervoussystem.Thesuccessoftheimmune
ForAmerica’schildrentheeducationsystemisoftenliterallyalottery.ThatisthemainmessageofanewdocumentaryaboutAm
RememberNapsterorGrokster?Bothservicesalloweduserstosharecomputerfiles—usuallydigitalmusic—thatinfringedthecopyr
列举一下你所了解的XML技术及其应用
请在当前幻灯片中插入一个组织结构图,其中第一层与第二层之间有一个助手图框。
下列不属于软件调试技术的是()。
从目前技术来看,下列打印机中打印速度最快的是________。
论IT服务规划设计IT服务规划设计处于IT服务生命周期的前期,如果前期未进行有效的规划设计,那么仓促而就的IT服务就难以满足客户的真正需求,可能造成IT服务可用性降低、客户满意度低下等问题。为确保有效做好IT服务规划设计,服务供方在IT服务规划设计过程中
随机试题
明末地理学家徐弘祖经34年旅行,写有天台山、雁荡山、黄山、庐山等名山游记17篇和《浙游日记》《江右游日记》等著作,除部分__________外,遗有60余万字游记__________,去世后由他人整理成《徐霞客游记》。此书是以日记体为主的中国地理名著,对地
Ifsustainablecompetitiveadvantagedependsonworkforceskills,Americanfirmshaveaproblem.Humanresourcemanagementisn
Doyouthinkstandardsofeducationhave______inrecentyears?
______havegoneabroad.
关于外阴阴道假丝酵母菌病,下列说法错误的是
在建设工程项目进度控制的任务中,包括控制设计准备阶段的工作进度、设计工作进度、物资采购工作进度,以及项目动用前准备阶段的工作进度的是()进度控制的任务。
选择会计软件时,应优先考虑软件的实用性,其次考虑合法性。()
某企业采用先进先出法计算发出材料的成本。2006年3月1日结存A材料200吨,每吨实际成本为200元;3月4日和3月17日分别购进A材料300吨和400吨,每吨实际成本分别为180元和220元3月10日和3月27分别发出A材料400吨和350吨。A材料
求.
Everyoneseemstoknowthatgrandma’scookiestastebetterbecausethey’remadewithlove.Butisthatreally【C1】______?Arese
最新回复
(
0
)