java上传图片到服务器指定路径
private File myFile; //文件
private String myFileContentType; //类型
private String myFileFileName; //文件名
//。。。。getXXX() setXXX()方法
//输入流
InputStream is = new FileInputStream(myFile);
//设定文件路径
String photoPath = ServletActionContextgetServletContext()
getRealPath("/user/photo/");
File filePhotoPath = new File(photoPath);
//判断这个路径是否存在,如果不存在创建这个路径
if (!filePhotoPathisDirectory()) {
filePhotoPathmkdir();
}
String extension = FilenameUtilsgetExtension(this
getMyFileFileName()); //后缀名 比如jpg
String filename = UUIDrandomUUID()toString() + "" + extension;
// 目标文件
File tofile = new File(photoPath, filename);
// 输出流
OutputStream os = new FileOutputStream(tofile);
byte[] buffer = new byte[1024];
int length = 0;
while ((length = isread(buffer)) > 0) {
oswrite(buffer, 0, length);
}
// 关闭输入流
isclose();
// 关闭输出流
osclose();
应该这样写:
filepath = ServerMapPath("~")&"/image/"& dl1SelectedValue & "/" & filename '上传路径 ,这样即使是把网站放在虚拟目录下页没问题
你只要记住一点:ServerMapPath()方法是获取你服务器上你存放文件的物理地址,假如你把网站根目录指向d:\wwwroot\fqueen,那么就可以通过 ServerMapPath("~")的方法获得你的这个根目录。
当然也可以用HttpContextCurrentRequestMapPath()的方法,不过要注意路径。
补充:
======================================
即使你的uploadaspx在web_eng下(web_eng/uploadaspx),使用上面的方法也一样的,因为filepath = ServerMapPath("~")&"/image/" 就是指向你的服务器物理地址:d:\wwwroot\fqueen\images 的,所以无论你将uploadaspx文件放在什么目录下,上传文件的路径都是正确的。
的文件夹 给予iis来宾访问权限了没 启用父路径了没 你web的根目录位置是在d:\vs2010项目\酒店管理系统\ 这个路径么?
你获取的是绝对地址 应该换成http协议的地址最好 正如楼下所说的一样 能成http的地址来获取访问
当你用ASP。NET去编程的时候,在后台代码中的操作实际上就是在服务器上的操作。而前台的Javascript代码才是对客户端进行的操作。你在画面上的控件,如果双击能产生事件,像是Button一类的,都是服务器控件。所以,在后台写代码,可以操作服务器上的任一文件,包括。例如下面找文件名的函数。
string dirPath= HttpContextCurrentServerMapPath("/PIC/");
if (DirectoryExists(dirPath))
{
//获得目录信息
DirectoryInfo dir = new DirectoryInfo(dirPath);
//获得目录文件列表
FileInfo[] files = dirGetFiles("");
string[] fileNames = new string[filesLength];
int i = 0;
foreach (FileInfo fileInfo in files)
{
fileNames[i] = fileInfoName;
i++;
}
return fileNames;
}
的路径通常是放在服务器里的,将路径存入数据库的话很简单,在数据库设置一个varchar型的字段就可以了。 数据库是通过服务器进行连接的,不用上传的;要显示出来的话,当然要读出数据库相应得字段获取字符串,也就是的路径。
0条评论