读一个远程文件

yingShisscWang 2011-04-29 11:05:36
我已试过下面的代码
File file = new File("//16.123.234.123/home/emo/var/opennebula/templates/centos/centos-vm.tmpl")
...全文
82 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
yingShisscWang 2011-05-01
  • 打赏
  • 举报
回复
是ftp没开的缘故
yingShisscWang 2011-04-29
  • 打赏
  • 举报
回复

try {


urlfile = new java.net.URL("ftp://username:password@15.123.234.122/home/emo/var/aa.tmp");

ftpUrl = (FtpURLConnection) urlfile.openConnection();
InputStream inStream = ftpUrl.getInputStream();

byte b[] = new byte[1024];
int len = 0;
int temp=0;
while((temp=inStream.read())!=-1){
b[len]=(byte)temp;
len++;
}
inStream.close();
System.out.println(new String(b,0,len));


} catch (Exception e) {
e.printStackTrace();
}



我用网上的参考,写了上面的代码,但可惜还是报错了,报错是报在
InputStream inStream = ftpUrl.getInputStream();

报的错误是:java.net.ConnectException: Connection refused: connect

~~~楼上的FtpClient的例子太简略了~~~好像也不太行
蛋黄车 2011-04-29
  • 打赏
  • 举报
回复
确认目录主机的ftp已经打开,然后使用FTPClient

参考链接http://group.gimoo.net/review/25130
yingShisscWang 2011-04-29
  • 打赏
  • 举报
回复
这个文件本身是不能通过http:///15.123.234.122/home/emo/var/aa.tmp 来访问的
yingShisscWang 2011-04-29
  • 打赏
  • 举报
回复
指的是局域网内部的一台linux机器,不是http下的
我局的应该能用ftp
new java.net.URL("ftp://15.123.234.122/home/emo/var/aa.tmpl");
但是接下来怎么操作不知道
Jeelon 2011-04-29
  • 打赏
  • 举报
回复
读取网络上的文件 应该要考虑http 还有权限 等问题的吧?
yingShisscWang 2011-04-29
  • 打赏
  • 举报
回复
urlfile = new java.net.URL("//15.123.234.122/home/emo/var/aa.tmpl");
第一行就出错了
感觉这个URL类的参数是否只能使“http://....”开头的文件
蛋黄车 2011-04-29
  • 打赏
  • 举报
回复
你指的远程是指自己不受控制的计算机上还是指网页可以访问到的地址文件?我开始怀疑这是不是你想要的东西了
蛋黄车 2011-04-29
  • 打赏
  • 举报
回复
http就是protocol

使用这个的前提是使用http协议
yingShisscWang 2011-04-29
  • 打赏
  • 举报
回复
我也有试过用

urlfile = new java.net.URL("//15.123.234.122/home/emo/var/aa.tmpl");
httpUrl = (HttpURLConnection) urlfile.openConnection();
httpUrl.connect();


抛了这么个异常:
java.net.MalformedURLException: no protocol: //15.123.234.122/home/emo/var/aa.tmpl
蛋黄车 2011-04-29
  • 打赏
  • 举报
回复
首先确定,你能访问//15.123.234.122/home/emo/var/aa.tmpl

其实是读取远程文件的方式需要用到URL这个类。

在google搜索关键字“java读取远程文件” 一大堆代码
yingShisscWang 2011-04-29
  • 打赏
  • 举报
回复
sorry 我按的太快了

File file = new File("//15.123.234.122/home/emo/var/aa.tmpl)
FileReader readIn = new FileReader(file);


但是报了一个错误“找不到网络路径”
蛋黄车 2011-04-29
  • 打赏
  • 举报
回复
无语了,楼主原来是在给大家传授经验的~
lliiqiang 2011-04-29
  • 打赏
  • 举报
回复
要用WEB远程服务访问文件,URL url=new URL(""地址");
URLConnection open=url.openConnection();
whut_lcy 2011-04-29
  • 打赏
  • 举报
回复
FTP允许匿名么?不允许的话,还是老老实实的按照FTP的流程来搞,搞了身份验证再说。
蛋黄车 2011-04-29
  • 打赏
  • 举报
回复
ftp://username:password@15.123.234.122

1·15.123.234.122主机ftp服务已经开启
2·username对应你登录ftp用户名
3·password对应你登录ftp密码

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧