将上传的图片存放在,根据当天日期生成的文件中。
错误: 当天第一次上传的图片无法保存,从第二张图片开始就能保存。
调试发现当天的第一次上传只创建了一个以当天日期为名的文件夹。
程序提示错误是:虚拟路径无效。
26 个解决方案
#1
首先把当天的日期,串成一个字符串,如20130507
然后在存储任一文件之前,先判断目录是否存在,如果不存在,创建这个目录,
反之,不用创建目录,直接保存文件即可。
然后在存储任一文件之前,先判断目录是否存在,如果不存在,创建这个目录,
反之,不用创建目录,直接保存文件即可。
#2
路径没有取对,把代码贴出来。
#3
代码发出来...
#4
路径合成,然后检查该路径是否存在,不存在就创建,存在就保存文件
#5
先建文件夹,再保存
#6
#7
这是今天第一次上传图片。
第二次在上传就可以了
第二次在上传就可以了
#8
你拿第二天可以保存的路径对比一下看看那有不一样的地方!
#9
CheckFile():方法是检查文件夹是否存在,不存在就创建一个。
#10
不用对比现在就可以上传
#11
先判断是否存在文件夹 然后在存图片
#12
我认为是刚创建的文件夹,无法获取。
#13
CheckFile() 方法中已经判断过了
private static string CheckFile()
{
string tiem = DateTime.Now.ToString("yyyyMMdd");
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
if (!System.IO.Directory.Exists(folder))
{
System.IO.Directory.CreateDirectory((folder + "/"));
return folder;
}
return "/BusinessLicenseUploadFiles/" + tiem + "/";
}
#14
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
后面加个/
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem+"/");
后面加个/
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem+"/");
#15
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
后面加个/
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem+"/");
路径改下
#16
string folder = System.Web.HttpContext.Current.Server.MapPath("~/BusinessLicenseUploadFiles/" + tiem+"/");
#17
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
后面加个/
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem+"/");
加上也不行, 报的错和上面一样。
#18
System.IO.Directory.CreateDirectory((folder + "/"));
return folder+"/";
return folder+"/";
#19
我错了,应该是把return folder;直接删除不要
private static string CheckFile()
{
string tiem = DateTime.Now.ToString("yyyyMMdd");
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
if (!System.IO.Directory.Exists(folder))
{
System.IO.Directory.CreateDirectory((folder + "/"));
}
return "/BusinessLicenseUploadFiles/" + tiem + "/";
}
private static string CheckFile()
{
string tiem = DateTime.Now.ToString("yyyyMMdd");
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
if (!System.IO.Directory.Exists(folder))
{
System.IO.Directory.CreateDirectory((folder + "/"));
}
return "/BusinessLicenseUploadFiles/" + tiem + "/";
}
#20
string folder = System.Web.HttpContext.Current.Server.MapPath("~/BusinessLicenseUploadFiles/" + tiem+"/");
该成这样也不行。
我任务不是着的错误。程序运行到报错那,已经在新建了一个当天日期的文件夹“20130507”。
我在重新运行程序(什么都不修改),就能上传成功。
#21
string folder = System.Web.HttpContext.Current.Server.MapPath("~/BusinessLicenseUploadFiles/" + tiem+"/");
该成这样也不行。
我任务不是着的错误。程序运行到报错那,已经在新建了一个当天日期的文件夹“20130507”。
我在重新运行程序(什么都不修改),就能上传成功。
因为你的folder 已经处理成Server.MapPath,如果此时返回又处理一次,那肯定是会出错的,所以直接不做处理,让他直接执行下边的"/BusinessLicenseUploadFiles/" + tiem + "/";
#22
谢谢,各位。
问题截取了。
十九楼正解。
问题截取了。
十九楼正解。
#23
十九楼的朋友,能不能给解释一下为什么。
#24
为什么直接删除不要呢?
#25
string folder = System.Web.HttpContext.Current.Server.MapPath("~/BusinessLicenseUploadFiles/" + tiem+"/");
该成这样也不行。
我任务不是着的错误。程序运行到报错那,已经在新建了一个当天日期的文件夹“20130507”。
我在重新运行程序(什么都不修改),就能上传成功。
因为你的folder 已经处理成Server.MapPath,如果此时返回又处理一次,那肯定是会出错的,所以直接不做处理,让他直接执行下边的"/BusinessLicenseUploadFiles/" + tiem + "/";
这里不是说了吗?
#26
#1
首先把当天的日期,串成一个字符串,如20130507
然后在存储任一文件之前,先判断目录是否存在,如果不存在,创建这个目录,
反之,不用创建目录,直接保存文件即可。
然后在存储任一文件之前,先判断目录是否存在,如果不存在,创建这个目录,
反之,不用创建目录,直接保存文件即可。
#2
路径没有取对,把代码贴出来。
#3
代码发出来...
#4
路径合成,然后检查该路径是否存在,不存在就创建,存在就保存文件
#5
先建文件夹,再保存
#6
#7
这是今天第一次上传图片。
第二次在上传就可以了
第二次在上传就可以了
#8
你拿第二天可以保存的路径对比一下看看那有不一样的地方!
#9
CheckFile():方法是检查文件夹是否存在,不存在就创建一个。
#10
不用对比现在就可以上传
#11
先判断是否存在文件夹 然后在存图片
#12
我认为是刚创建的文件夹,无法获取。
#13
先判断是否存在文件夹 然后在存图片
CheckFile() 方法中已经判断过了
private static string CheckFile()
{
string tiem = DateTime.Now.ToString("yyyyMMdd");
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
if (!System.IO.Directory.Exists(folder))
{
System.IO.Directory.CreateDirectory((folder + "/"));
return folder;
}
return "/BusinessLicenseUploadFiles/" + tiem + "/";
}
#14
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
后面加个/
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem+"/");
后面加个/
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem+"/");
#15
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
后面加个/
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem+"/");
路径改下
#16
string folder = System.Web.HttpContext.Current.Server.MapPath("~/BusinessLicenseUploadFiles/" + tiem+"/");
#17
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
后面加个/
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem+"/");
加上也不行, 报的错和上面一样。
#18
System.IO.Directory.CreateDirectory((folder + "/"));
return folder+"/";
return folder+"/";
#19
我错了,应该是把return folder;直接删除不要
private static string CheckFile()
{
string tiem = DateTime.Now.ToString("yyyyMMdd");
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
if (!System.IO.Directory.Exists(folder))
{
System.IO.Directory.CreateDirectory((folder + "/"));
}
return "/BusinessLicenseUploadFiles/" + tiem + "/";
}
private static string CheckFile()
{
string tiem = DateTime.Now.ToString("yyyyMMdd");
string folder = System.Web.HttpContext.Current.Server.MapPath("/BusinessLicenseUploadFiles/" + tiem);
if (!System.IO.Directory.Exists(folder))
{
System.IO.Directory.CreateDirectory((folder + "/"));
}
return "/BusinessLicenseUploadFiles/" + tiem + "/";
}
#20
string folder = System.Web.HttpContext.Current.Server.MapPath("~/BusinessLicenseUploadFiles/" + tiem+"/");
该成这样也不行。
我任务不是着的错误。程序运行到报错那,已经在新建了一个当天日期的文件夹“20130507”。
我在重新运行程序(什么都不修改),就能上传成功。
#21
string folder = System.Web.HttpContext.Current.Server.MapPath("~/BusinessLicenseUploadFiles/" + tiem+"/");
该成这样也不行。
我任务不是着的错误。程序运行到报错那,已经在新建了一个当天日期的文件夹“20130507”。
我在重新运行程序(什么都不修改),就能上传成功。
因为你的folder 已经处理成Server.MapPath,如果此时返回又处理一次,那肯定是会出错的,所以直接不做处理,让他直接执行下边的"/BusinessLicenseUploadFiles/" + tiem + "/";
#22
谢谢,各位。
问题截取了。
十九楼正解。
问题截取了。
十九楼正解。
#23
十九楼的朋友,能不能给解释一下为什么。
#24
为什么直接删除不要呢?
#25
string folder = System.Web.HttpContext.Current.Server.MapPath("~/BusinessLicenseUploadFiles/" + tiem+"/");
该成这样也不行。
我任务不是着的错误。程序运行到报错那,已经在新建了一个当天日期的文件夹“20130507”。
我在重新运行程序(什么都不修改),就能上传成功。
因为你的folder 已经处理成Server.MapPath,如果此时返回又处理一次,那肯定是会出错的,所以直接不做处理,让他直接执行下边的"/BusinessLicenseUploadFiles/" + tiem + "/";
这里不是说了吗?