CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2SE / 基础类

java.io.File对象能指定到另外一台机器上已知目录或其下文件吗(急,再线等)

楼主JavaVirgin(java者)2003-06-02 11:51:23 在 Java / J2SE / 基础类 提问

我想访问另外一台机器上已知目录下是否有一已知时间以后的新文件。  
  管理员用户名和密码均已知  
  我看到File对象中有个构造函数:  
  File(URI   uri)    
   
  好像可以,但我试了几下都不行 问题点数:0、回复次数:10Top

1 楼feiyuegaoshan(飞跃)回复于 2003-06-02 12:31:57 得分 0

没问题。你把协议指对了就可以了。  
  btw:file协议Top

2 楼ytdmm(相忘于江湖)回复于 2003-06-02 12:37:13 得分 0

不可以。  
   
  需要建立ServerSocket和Socket来传送文件,一端发送一端接收。Top

3 楼wyqiang(强)回复于 2003-06-02 12:58:19 得分 0

也许你用错了  
  我书上有个例题讲怎样访问本机上文件  
   
  它采用       args[0]     转数  
  我想你的问题是static   没用好吧  
  Top

4 楼JavaVirgin(java者)回复于 2003-06-02 13:04:11 得分 0

feiyuegaoshan:  
  以下是我得部分代码,帮我看看,哪儿写错了  
  访问10.128.1.3机器的d盘下(默认共享名为d$)mmWeb目录  
  user:administrator  
  pwd:11  
  ....  
  URI   u=new   URI("file://administrator:11@10.128.1.3/d:/mmWeb");  
  File   f   =   new   File(u);  
   
  报错:  
  java.lang.IllegalArgumentException:   URI   has   an   authority   component  
   
  at   java.io.File.<init>(File.java:326)  
   
  at   study.rmi.AccessToMailServer.hasNewFile(AccessToMailServer.java:18)  
   
  at   study.rmi.AccessToMailServer.main(AccessToMailServer.java:28)  
   
  Exception   in   thread   "main"    
  Top

5 楼JavaVirgin(java者)回复于 2003-06-02 13:05:54 得分 0

wyqiang:  
   
  访问本机的文件当然是很容易的了  
  :)Top

6 楼wyqiang(强)回复于 2003-06-02 13:06:36 得分 0

 
  /**   Displays   one   machine's   status,   for   RMI.  
  */  
  public   class   RMIPanel   extends   NetPanel   implements   Runnable   {  
  public   RMIPanel(String   host,   Properties   p)   {  
  super(host,   p);  
  }  
  Example   22-7.   NetWatch.java   (continued)  
  22.6.   PROGRAM:   RMIWATCH   681  
  /**   Keep   the   screen   updated   forever,   unless   stop()ped.   */  
  public   void   run()   {  
  String   thePort   =   props.getProperty("rmiwatch.port",   "");  
  String   theURL   =   "rmi://"   +   hostName   +   ":"   +   thePort;  
  while   (!done)   {  
  try   {  
  String[]   names   =   Naming.list(theURL);  
  ta.setText("");  
  for   (int   i=0;   i<names.length;   i++)   {  
  ta.append(i   +   ":   "   +   names[i]   +   "\n");  
  }  
  //   If   we   didn't   get   an   exception,   host   is   up.  
  String   expect   =   props.getProperty("rmiwatch.expect");  
  String   fullText   =   ta.getText();  
  if   (fullText.length()   ==   0)   {  
  ta.setText("(nothing   registered!)");  
  setState(EMPTY);  
  }   else   if   (expect   !=   null   &&   fullText.indexOf(expect)==-1)   {  
  setState(DUBIOUS);  
  }   else   setState(FINE);  
  }   catch   (java.rmi.ConnectIOException   e)   {  
  setState(DOWN);  
  ta.setText("Net   error:   "   +   e.detail.getClass());  
  }   catch   (java.rmi.ConnectException   e)   {  
  setState(NOREG);  
  ta.setText("RMI   error:   "   +   e.getClass().getName()   +   "\n"   +  
  "   "   +   e.detail.getClass());  
  //   System.err.println(hostName   +   ":"   +   e);  
  }   catch   (RemoteException   e)   {  
  setState(NOREG);  
  ta.setText("RMI   error:   "   +   e.getClass().getName()   +   "\n"   +  
  "   "   +   e.detail.getClass());  
  }   catch   (MalformedURLException   e)   {  
  setState(DOWN);  
  ta.setText("Invalid   host:   "   +   e.toString());  
  }   finally   {  
  //   sleep()   in   "finally"   so   common   "down"   states   don't   bypass.  
  //   Randomize   time   so   we   don't   make   net   load   bursty.  
  try   {  
  Thread.sleep((int)(sleepTime   *   MSEC   *   2   *   Math.random()));  
  }   catch   (InterruptedException   e)   {  
  /*CANTHAPPEN*/  
  }  
  }  
  }  
  }  
  }  
   
  哪个例题比较好吧Top

7 楼wyqiang(强)回复于 2003-06-02 13:17:31 得分 0

to:vaVirgin(java者)  
  帮我解一下那道题吧  
   
  http://expert.csdn.net/Expert/topic/1856/1856034.xml?temp=.7418939Top

8 楼feiyuegaoshan(飞跃)回复于 2003-06-02 14:23:52 得分 0

举例如下:  
          public   static   void   main(String[]   args)  
          {  
                  String   url   =   "//hsqiang/helios/sun_helios.jpgr";  
                  File   file   =   new   File(url);  
                  if   (file.exists())  
                  {  
                          System.out.println("existed!");  
                  }  
                  else  
                          System.out.println("not   found!");  
   
   
          }Top

9 楼JavaVirgin(java者)回复于 2003-06-02 15:09:50 得分 0

feiyuegaoshan:  
  我试了,没有权限验证的可以。  
  可是如果需要权限验证的话就不行了:  
          public   static   void   main(String[]   args)  
          {  
                  String   url   =   "//administrator:11@10.128.1.4/news/adduser.asp";  
                  //如果写成String   url=10.128.1.4/news/adduser.asp没问题  
                  File   file   =   new   File(url);  
                  if   (file.exists())  
                  {  
                          System.out.println("existed!");  
                  }  
                  else  
                          System.out.println("not   found!");  
   
   
          }  
  输出为not   found!  
   
  你能试一下怎样解决吗?还是我得url写的有问题?毕竟权限验证还是很需要的。  
  你用过java.net.uri对象吗?  
   
  分不够再给  
  Top

10 楼JavaVirgin(java者)回复于 2003-06-02 18:01:13 得分 0

hehe  
  upTop

相关问题

  • 如何从指定的机器拷贝指定的文件了?谢谢指教!
  • 请问如何限制用户在指定机器上登陆?
  • 能否只允许指定网卡号的机器连接到服务器?
  • WIN2000下如何取指定机器得用户名,如letmein程序
  • 机器一启动,IE就跳出来,转到指定的网站,怎么办?
  • 请问如何获取指定IP的机器名?就像追捕一样
  • 请问如何取得指定机器的所有共享目录?
  • 关于得到局域网内指定IP机器名的问题?
  • 做 ServerSocket 多线程 连接,如何向指定的机器(IP)发送信息。
  • ASP读同局域网内指定的机器各个硬盘的空间...

关键词

  • 文件
  • accesstomailserver
  • 机器
  • 目录
  • rmi
  • uri
  • 访问

得分解答快速导航

  • 帖主:JavaVirgin

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo