问题描述
不知道怎么的,只在一个文件夹里才能读取图片,而在其他文件夹却找不到图片。但是路径是对的。却弹出来的错却说找不大该文件。真是晕啊,不知道哪里出错了,请高手指点一二。谢了。。。。。。//获取图片的路径stringstrFilePath=this.fileTest.PostedFile.FileName.ToString();//分割图片的路径与名字varuploadFilePath=this.fileTest.PostedFile.FileName.Split(newstring[]{"\"},StringSplitOptions.RemoveEmptyEntries);//获取图片的名字stringstrFileName=uploadFilePath[uploadFilePath.Length-1];//C#FileStream在磁盘或网络路径上指向文件的流。根据路径打开文件并且读取它。FileStreamfs=newFileStream(strFilePath,FileMode.Open,FileAccess.Read);//基于所提供的流,初始化BinaryReader类的新实例BinaryReaderbr=newBinaryReader(fs);//从当前流中读取指定的字节数以写入字节数组中,并将当前位置前移相应的字节数。byte[]files=br.ReadBytes((int)fs.Length);this.fileTest.PostedFile.SaveAs(Server.MapPath("../FileUpload")+"\"+strFileName);
解决方案
解决方案二:
if(FileUpLogo.HasFile){//取得上传文件的大小intFileLen=FileUpLogo.PostedFile.ContentLength;Byte[]FileData=newByte[FileLen];//创建访问客户端上传文件的对象HttpPostedFilehp=FileUpLogo.PostedFile;//创建数据流对象System.IO.Streamsr=hp.InputStream;//将图片数据放到FileData数组对象实例中,0代表数组指针的起始位置,FileLen代表指针的结束位置sr.Read(FileData,0,FileLen);//将FileData赋值给实体brandModel.fld_logo=FileData;}
读取的时候<imgsrc="a.aspx?id=x"/>show.aspx的后台privatevoidPage_Load(objectsender,System.EventArgse){stringstrID=Request.QueryString["id"];stringsqlstr="selectphotofromTbwhereid=@id";SqlConnectionmyConnection=newSqlConnection(connstr);SqlCommandmyCommand=newSqlCommand(sqlstr,myConnection);myCommand.AddWithValue("@id",strID);try{myConnection.Open();SqlDataReaderdr=myCommand.ExecuteReader(CommandBehavior.CloseConnection);if(dr.Read()){Response.Clear();Response.ContentType="image/gif";Response.BinaryWrite((byte[])dr["photo"]);}myConnection.Close();}catch(SqlExceptionex){}Response.End();}
解决方案三:
学习了,正也在找这个东西呢,先试试看
解决方案四:
习了,正也在找这个东西呢,先试试看
解决方案五:
解决方案六:
webconfig配置
解决方案七:
引用4楼porschev的回复:
asp.net上传图片。。。
这个好。