我这有一个图片上传的小例子在本地测试时一切正常,但是发布以后上传到空间就出现问题了提示“未能找到路径“C:\Documents and Settings\Administrator\桌面\临时图片\小贝1.jpg”的一部分。 ”代码如下: if (FileUpload1.HasFile)
{
string fileContentType = FileUpload1.PostedFile.ContentType;
if (fileContentType == "image/bmp" || fileContentType == "image/gif" || fileContentType == "image/png" || fileContentType == "image/pjpeg")
{
string name = FileUpload1.PostedFile.FileName; // 客户端文件路径
FileInfo file = new FileInfo(name);
// string fid = this.Label1.Text;
string fid = this.idnum.Text;
string fileName = file.Name; // 文件名称
string fileName_s = "thumb-" +file.Name ; // 缩略图文件名称
string fileName_sy = "image-" + file.Name; // 水印图文件名称(文字)
string fileName_syp = "syp_" + fid + file.Name; // 水印图文件名称(图片)
string webFilePath = Server.MapPath("~/images/chanpin-image/file/" + fileName); // 服务器端文件路径
string webFilePath_s = Server.MapPath("~/images/chanpin-image/X-images/" + fileName_s); // 服务器端缩略图路径
string webFilePath_sy = Server.MapPath("~/images/chanpin-image/D-images/" + fileName_sy); // 服务器端带水印图路径(文字)
string webFilePath_syp = Server.MapPath("~/images/chanpin-image/upfile/" + fileName_syp); // 服务器端带水印图路径(图片)
string webFilePath_sypf = Server.MapPath("~/images/chanpin-image/shuiyinfile/shuiyin.jpg"); // 服务器端水印图路径(图片) FileStream fs = File.OpenRead(name);
string type = name.Substring(name.LastIndexOf(".") + 1);
{
string fileContentType = FileUpload1.PostedFile.ContentType;
if (fileContentType == "image/bmp" || fileContentType == "image/gif" || fileContentType == "image/png" || fileContentType == "image/pjpeg")
{
string name = FileUpload1.PostedFile.FileName; // 客户端文件路径
FileInfo file = new FileInfo(name);
// string fid = this.Label1.Text;
string fid = this.idnum.Text;
string fileName = file.Name; // 文件名称
string fileName_s = "thumb-" +file.Name ; // 缩略图文件名称
string fileName_sy = "image-" + file.Name; // 水印图文件名称(文字)
string fileName_syp = "syp_" + fid + file.Name; // 水印图文件名称(图片)
string webFilePath = Server.MapPath("~/images/chanpin-image/file/" + fileName); // 服务器端文件路径
string webFilePath_s = Server.MapPath("~/images/chanpin-image/X-images/" + fileName_s); // 服务器端缩略图路径
string webFilePath_sy = Server.MapPath("~/images/chanpin-image/D-images/" + fileName_sy); // 服务器端带水印图路径(文字)
string webFilePath_syp = Server.MapPath("~/images/chanpin-image/upfile/" + fileName_syp); // 服务器端带水印图路径(图片)
string webFilePath_sypf = Server.MapPath("~/images/chanpin-image/shuiyinfile/shuiyin.jpg"); // 服务器端水印图路径(图片) FileStream fs = File.OpenRead(name);
string type = name.Substring(name.LastIndexOf(".") + 1);
解决方案 »
- FileUpload控件选择某文件后触发的事件
- 急急急。。!高分求助!!!一个网站的明星按字母顺序排列,在线等。。。。。。
- 在.net中如何打开调用excel程序打开一个excel文件? 就像直接双击这个文件一样。
- C#面试问题 在线急等啊啊 !~
- 各位老师们,这里有一个问题急于请教啊!
- 新建.net讨论群,欢迎大家加入讨论!12964316
- jquery表单验证怎么和Ajax结合起来用啊?
- 自定义控件(dll)中怎么把其中包含的子控件的事件作为这个控件的事件?
- 未找到 oracle 客户端和网络组件,原来的解决方法不管用了,求大侠支新招。急!!!
- web:onclick 和onclientclick 执行问题
- C#读取Txt文本数据问题!
- 关于后台动态新增HtmlTable行的问题
string ximg = "images/chanpin-image/X-images/" + fileName_s;
Product2 pt2 = new Product2();
pt2.DIMG = dimg;
byte[] content = new byte[fs.Length];
fs.Read(content, 0, content.Length);
fs.Close(); SqlConnection conn = new SqlConnection("data source=.; initial catalog=zhuoye;user id=sa;pwd=;");
SqlCommand cmd = conn.CreateCommand();
conn.Open(); cmd.CommandText = "insert into ChanPin (CP_ID,CP_Name,CP_Num,CP_Dimg,CP_Ximg,CP_Date,Image_Sencer,Effective_Pixels,Signal_System,Horizontal_Resolution,Shutter_Speed,White_Balance,S_N_Ratio,Minimum_Illumination,Video_Output,Backlight_Compensation,Operation_Temperature,Operation_Temperature2,Sync_System,Dimensions,NW_GW,LED_number,Infraed_Lamps,JiaGe,Image_Content) values (@id,@CP_Name,@CP_Num,@CP_Dimg,@CP_Ximg,@CP_Date,@Image_Sencer,@Effective_Pixels,@Signal_System,@Horizontal_Resolution,@Shutter_Speed,@White_Balance,@S_N_Ratio,@Minimum_Illumination,@Video_Output,@Backlight_Compensation,@Operation_Temperature,@Operation_Temperature2,@Sync_System,@Dimensions,@NW_GW,@LED_number,@Infraed_Lamps,@JiaGe,@content)";
cmd.CommandType = CommandType.Text;
if (type == "jpg" || type == "gif" || type == "bmp" || type == "png")
{
pt2.XIMG = ximg;
AddShuiYinword(webFilePath, webFilePath_sy);
AddShuiYinPic(webFilePath, webFilePath_syp, webFilePath_sypf);
MakeThumbnail(webFilePath, webFilePath_s, 200, 200, "Cut"); // 生成缩略图方法
Label2.Text = "提示:文件“" + fileName + "”上传成功“";
很明显,是你客户端的文件路径,服务器上是没有这个路径和权限的。你们哪行的错误,就将这行的文件路径修改成服务器端的,Server.MapPath()方法转换成服务器端的路径
// string fid = this.Label1.Text;
string fid = this.idnum.Text;
string fileName = file.Name; // 文件名称
string fileName_s = "thumb-" +file.Name ; // 缩略图文件名称
string fileName_sy = "image-" + file.Name; // 水印图文件名称(文字)
string fileName_syp = "syp_" + fid + file.Name; // 水印图文件名称(图片)
string webFilePath = Server.MapPath("~/images/chanpin-image/file/" + fileName); // 服务器端文件路径
string webFilePath_s = Server.MapPath("~/images/chanpin-image/X-images/" + fileName_s); // 服务器端缩略图路径
string webFilePath_sy = Server.MapPath("~/images/chanpin-image/D-images/" + fileName_sy); // 服务器端带水印图路径(文字)
string webFilePath_syp = Server.MapPath("~/images/chanpin-image/upfile/" + fileName_syp); // 服务器端带水印图路径(图片)
string webFilePath_sypf = Server.MapPath("~/images/chanpin-image/shuiyinfile/shuiyin.jpg"); // 服务器端水印图路径(图片)
string fName = Path.GetFileName(FileUpload1.PostedFile.FileName);
string saveFileName = Server.MapPath(string.Format("FileUpLoadSavePath/{0}", fName));
FileUpload1.SaveAs(saveFileName);
FileInfo file = new FileInfo(saveFileName);下面就是你自己的处理代码了,这样就可以了
FileInfo file = new FileInfo(name);
string fid = this.idnum.Text;
string fileName = file.Name; // 文件名称
string fileName_s = "thumb-" +file.Name ; // 缩略图文件名称
string fileName_sy = "image-" + file.Name; // 水印图文件名称(文字)
string fileName_syp = "syp_" + fid + file.Name; // 水印图文件名称(图片)
string webFilePath = Server.MapPath("~/images/chanpin-image/file/" + fileName); // 服务器端文件路径
string webFilePath_s = Server.MapPath("~/images/chanpin-image/X-images/" + fileName_s); // 服务器端缩略图路径
string webFilePath_sy = Server.MapPath("~/images/chanpin-image/D-images/" + fileName_sy); // 服务器端带水印图路径(文字)
string webFilePath_syp = Server.MapPath("~/images/chanpin-image/upfile/" + fileName_syp); // 服务器端带水印图路径(图片)
string webFilePath_sypf = Server.MapPath("~/images/chanpin-image/shuiyinfile/shuiyin.jpg"); // 服务器端水印图路径(图片)
FileStream fs = File.OpenRead(name);
string type = name.Substring(name.LastIndexOf(".") + 1);
string fName = Path.GetFileName(FileUpload1.PostedFile.FileName);
string saveFileName = Server.MapPath(string.Format("FileUpLoadSavePath/{0}", fName));
FileUpload1.SaveAs(saveFileName); //这个代码一定要在你建立“FileInfo”之前调用
FileInfo file = new FileInfo(saveFileName); string fid = this.idnum.Text;
string fileName = file.Name; // 文件名称
string fileName_s = "thumb-" +file.Name ; // 缩略图文件名称
string fileName_sy = "image-" + file.Name; // 水印图文件名称(文字)
string fileName_syp = "syp_" + fid + file.Name; // 水印图文件名称(图片)
string webFilePath = Server.MapPath("~/images/chanpin-image/file/" + fileName); // 服务器端文件路径
string webFilePath_s = Server.MapPath("~/images/chanpin-image/X-images/" + fileName_s); // 服务器端缩略图路径
string webFilePath_sy = Server.MapPath("~/images/chanpin-image/D-images/" + fileName_sy); // 服务器端带水印图路径(文字)
string webFilePath_syp = Server.MapPath("~/images/chanpin-image/upfile/" + fileName_syp); // 服务器端带水印图路径(图片)
string webFilePath_sypf = Server.MapPath("~/images/chanpin-image/shuiyinfile/shuiyin.jpg"); // 服务器端水印图路径(图片)
FileStream fs = File.OpenRead(name);
string type = name.Substring(name.LastIndexOf(".") + 1);
要不你又要出错
未能找到路径“d:\web\ketong\web\zhuoye\admin\FileUpLoadSavePath\m4.jpg”的一部分。
我把FileUpLoadSavePath移动到zhuoye\admin目录下提示错误:
未能找到路径“C:\Documents and Settings\Administrator\桌面\临时图片\m4.jpg”的一部分。
改为FileStream fs = File.OpenRead(fName);
string type = name.Substring(name.LastIndexOf(".") + 1); 同志啊,看问题一定要从头开始看,不要只看到一处就改一处,要小心检查每一处
尤其是用到变量的地方
未能找到文件“c:\windows\system32\inetsrv\m1.jpg”。
string saveFileName = Server.MapPath(string.Format("~/images/chanpin-image/file/{0}", fName));
FileUpload1.SaveAs(saveFileName); //这个代码一定要在你建立“FileInfo”之前调用
FileInfo file = new FileInfo(saveFileName);
//FileInfo file = new FileInfo(name);
// string fid = this.Label1.Text;
string fid = this.idnum.Text;
string fileName = file.Name; // 文件名称
string fileName_s = "thumb-" +file.Name ; // 缩略图文件名称
string fileName_sy = "image-" + file.Name; // 水印图文件名称(文字)
string fileName_syp = "syp_" + fid + file.Name; // 水印图文件名称(图片)
string webFilePath = Server.MapPath("~/images/chanpin-image/file/" + fileName); // 服务器端文件路径
string webFilePath_s = Server.MapPath("~/images/chanpin-image/X-images/" + fileName_s); // 服务器端缩略图路径
string webFilePath_sy = Server.MapPath("~/images/chanpin-image/D-images/" + fileName_sy); // 服务器端带水印图路径(文字)
string webFilePath_syp = Server.MapPath("~/images/chanpin-image/upfile/" + fileName_syp); // 服务器端带水印图路径(图片)
string webFilePath_sypf = Server.MapPath("~/images/chanpin-image/shuiyinfile/shuiyin.jpg"); // 服务器端水印图路径(图片) FileStream fs = File.OpenRead(fName);
string type = fName.Substring(fName.LastIndexOf(".") + 1);
C:\Documents and Settings\Administrator\桌面\临时图片\小贝1.jpg
这样的路径来问呢?
这要是能访问到,那你电脑里的东西我不都可以看到了?
把你的保存路径修改成服务器端的吧。