首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
如何通过ADO.NET读取数据库中的图片?
如何通过ADO.NET读取数据库中的图片?
admin
2019-03-29
95
问题
如何通过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
TruthinadvertisingisaconceptcentraltotheAmericanfreemarketeconomicsystem.Accordingtothistheory,companiesthat
删除字符串中的数字并压缩字符串(神州数码以前笔试题),如字符串”abc123de4fg56”处理后变为”abcdefg”。注意空间和效率。(下面的算法只需要一次遍历,不需要开辟新空间,时间复杂度为O(N))
为系统创建一个无毒点,以便遭遇病毒时将系统还原。
在PPoint中,()新幻灯片的占位符,可添加指定的对象,如图片等。A.左键单击B.右键单击C.左键双击D.右键双击
请利用“外观和主题”窗口,设置屏幕保护为“字幕”,文字为“全国专业技术人员计算机应用能力考试中,请移动鼠标开始”字体为“黑体”,字号为“72”,颜色为“浅绿色”(请按题目的顺序操作)。
下列不属于软件调试技术的是()。
将E-R图转换到关系模式时,实体与联系都可以表示成______。
IT服务团队建设周期中,组建期有四个关键步骤,其前后顺序不能改变。现将次序打乱为:①确定目标②稳定核心成员③了解现状④建立团队价值观下面______是其正确的排序方式。
信息系统的生命周期可以简化为立项、开发、运维及消亡四个阶段,()属于开发阶段的工作。
随机试题
A、Theyrebuiltthefencingaroundtheirfarm.B、Theyspentsevenyearsreplantingtheirfarm.C、Theyclaimeddamagesfortheirh
()抽油机井分层采油管柱是双管分采管柱
“中华全国文学艺术工作者代表大会”召开的时间是()
A、易爆炸品B、自燃及遇火燃烧的药品C、易燃液体D、极毒品及杀害性药品E、具有强烈腐蚀性的药品甲醇为
唐某、张某与刘某等人为某国有公司的职工,三人利用职务之便共同侵吞、侵占公款300余万元,但刘某并未分得赃款。关于本案的分析,下列哪些选项是正确的?()
图示铆接件,设钢板和铝铆钉的挤压应力分别为σjy,1、σjy,2,则两者的大小关系是:
下列关于基金经营机构客户信息管理要求的说法,不正确的是()。
ABC会计师事务所在2009年度承接了各种业务。在参照《鉴证业务基本准则》的相关内容执行业务时,遇到了下列情况,请代为作出正确的专业判断。在执行鉴证业务时,下列各项中,可能导致注册会计师出具无法提出结论报告的情形有()。
关于法律的效力等级,以下表述不正确的是:
ThechartbelowshowsthemainreasonformigrationtotheUKin2007.Inyourwriting,youshould1)describethechart,an
最新回复
(
0
)