出于安全考虑,新版浏览器都禁用了服务器端通过网页js来获取文件绝对路径。
您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。1基本概念的理解
绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:
C:/xyz/testtxt 代表了testtxt文件的绝对路径。>你先要搞明白你所说的“提取出绝对路径”这是你电脑里的地址,没有相对不相对之分,
不是服务器网站的相对地址,只有传到服务器上之后才分相对不相对。
而传到服务器上之后,相对地址都是你设置的,怎么得到相对地址那是你自己的事了,比如说用字符串链接一下来表示路径。
str1=“abc/”
str2="bcd/"
str3="文件名jpg"
绝对路径=str1&str2&str3
在java中获得文件的路径在我们做上传文件 *** 作时是不可避免的。 web 上运行 1:thisgetClass()getClassLoader()getResource("/")getPath(); thisgetClass()getClassLoader()getResource("")getPath(); 得到的是 ClassPath的绝对URI路径。
以工程名为TEST为例:
(1)得到包含工程名的当前页面全路径:requestgetRequestURI(),结果:/TEST/testjsp。
(2)得到工程名:requestgetContextPath(),结果:/TEST。
(3)得到当前页面所在目录下全名称:requestgetServletPath()。结果:如果页面在jsp目录下 /TEST/jsp/testjsp。
(4)得到页面所在服务器的全路径:applicationgetRealPath("页面jsp"),结果D:/resin/webapps/TEST/testjsp。
(5)得到页面所在服务器的绝对路径:absPath=new javaioFile(applicationgetRealPath(requestgetRequestURI()))getParent();
结果:D:/resin/webapps/TEST。
拓展:在类中取得路径的方法
(1)类的绝对路径:String u=ClassclassgetClass()getResource("/")getPath()
结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/
(2)得到工程的路径:SystemgetProperty("userdir")
结果:D:/TEST
题主你好,
从服务器上下载文件或向服务器上传文件最常用的命令当属scp了,使用方法也简单
一先说题主问题中的情况,即从服务器上往回拿文件(官话一点的表达:从服务器上将文件下载到本地):
scp 服务器用户名@服务器ip:文件的绝对路径 要将文件保存到本地哪
举例来说,我的服务器地址是1111,用户名为hellofriend,并且在服务器上的/home/hellofriend/下有个名为ok的文件,则我想将服务器上的这个ok文件下载到本地的根目录,/,下用到的命令为:
scp hellofriend@1111:/home/hellofriend/ok /
命令执行完成后,会提示你输入hellofriend这个用户的密码,密码输入完成后,回车,正常情况下,你在根目录下就能看到ok文件了
新手注意事项:
aip地址和文件路径中间有个冒号;
b文件路径一般用绝对路径,即从根开始找;
c不要忘了写你要将文件保存在本地的哪里;
-----
二再说如何将本地文件上传到服务器,这个不细说,命令和上面的差不多:
scp 本地的文件路径 服务器用户名@服务器ip:要保存在服务器的哪个位置
如我要将本地根目录下的ok文件上传到1111这台服务器的/home/hellofriend目录下,则命令为:
scp /ok root@1111:/home/hellofriend/
执行命令后,输入密码,回车,正常情况下文件就上传成功了
-----
写在最后: 上面命令写的其实相对死板一些,其实还有一些小技巧,题主用的多了就能了解了,这里先不过多展开
=====
希望可以帮到题主, 欢迎追问
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)