读书人

菜鸟求救~ 为什么运行时报错找不到指定

发布时间: 2011-12-15 23:41:24 作者: rapoo

初学者求救~~~~ 为什么运行时报错找不到指定的文件???
import java.io.*;
public class Romae2
{
static int count;
String filename;

public Romae2(String filename)
{
this.filename=filename;
}

public void change()throws IOException
{
byte butter[]=new byte[512];
FileInputStream font=new FileInputStream(this.filename);
do
{
count=font.read(butter);
if(count!=-1)
{
System.out.print(butter);
}
}
while(count!=-1);
font.close();
}

public static void main(String[] args)throws IOException
{
Romae2 a=new Romae2( "Romae2.txt ");
a.change();
}
}
在Romae.class同目录下设置了Romae2.txt 编译时没有问题 可是运行时出现(系统找不到文件)
请问什么地方出错了呢??
谢谢各位大虾指教~


[解决办法]
用绝对路径,要不你要把Romae2.txt放到class_path下才行
[解决办法]
编译的时候肯定不会有问题啦,这时候都还没有去找文件呢.这个主要是路径 的问题啦.用绝对路径应该是可以的,这个相对路径嘛就不知道它是相对哪里了.是bin下,还是wordspace还是当前项目目录呢?
[解决办法]
这条语句Romae2 a=new Romae2( "Romae2.txt ");错了
你必须设绝对路径,假如Romae2.txt在D盘,你就应该这样写
Romae2 a=new Romae( "D:/Romae2.txt ");必须保证D盘有Romae2.txt这个文件

[解决办法]
1, Use absolute path, or
2, Put that file in start-up directory, which is the place where java.exe is invoked. Jcreator may use a directory different from .class directory.
[解决办法]
我觉得你这个程序完全没必要这样写,你给你发个实例:
//ReadFile.java
import java.io.*;
public class readFile
{
public static void main(String args[]) throws Exception
{
File file=new File( "readFile.java ");
if(file.exists())
{
System.out.println( "file readFile.java don 't exists! ");
}
FileReader fr=new FileReader(file);
BufferedReader in=new BufferedReader(fr);
String lineContent;

while((lineContent=in.readLine())!=null)
{
System.out.println(lineContent);
}
in.close();
}
}

[解决办法]
■■国产类似tomcat的 "kangaroo_web_egg "web服务器正式发布,免费且开源

在java中间件中大部分人都知道tomcat,一个开源免费的web服务器,不过今天要介绍的是一个国内自主开发的web服务器

,它的名字叫“kangaroo_web_eggkangaroo_web_egg”,同样是开源免费的,但是它所运行的不是JSP脚本语言,而是自己开发的DQM脚本语言,

其拥有自己的容器用于执行DQM动态文件,我们称之为DQM容器。DQM很类似与JSP,但是比JSP来的简单,所以如果你会JSP那么

只需要稍看DQM就会理解。
   那么这个服务器有什么特点呢?
  1、不需要配置XML文件:以前我们 使用J2EE服务器时都时常需要配置XML文件,而kangaroo_web_egg则不需要,即使使用MVC

结构时也是用动态页面进行逻辑控制。
2、完善的国际化支持:每个涉及到内容输出或读取的方法都重载了带有字符集的方法,这样就不需要再去编写麻烦的过

滤器,只需要简单的提供当前所需要使用的字符集。
  3、有条件的文件输出:BBS的web程序中经常会遇到这样一种情况,允许用户自行上传文件,而上传后的文件必须满足某

些条件才能够被访问(读取、下载),这里所指的某些条件例如只有登录用户才能够访问,或者购买了BBS主题后才能访问等

等。类似情况在其它web应用中也有很多,那该如何实现这种功能呢?以前我们都是自己写一个servlet进行有条件的文件输出

,可是这样会很麻烦,如果要支持断点续传的需要那么自己还要写上一大段程序,要完全符合HTTP协议进行文件输出那么就更

加困难了,而在kangaroo_web_egg只需要简单的使用内置方法即可。
  4、command内置对象:kangaroo_web_egg有一个全新的内置对象command,用户可以通过此对象来查看或修改服务器当前信息



,利用此对象还可以在不停服务器的情况修改服务器的某些设置,比如不中断服务的情况下软重启服务器。
  5、生成静态页面:通 有些情况下,动态页面执行后的内容会长时间不变,但是访问的人却很多,如果生成静态页面那么

就可以免去了执行动态文件和读取数据库的开销。kangaroo_web_egg内置了自动的生成静态页面的功能,只需要简单编程就可以自

动生成静态页面了。
  5、编译及隐藏源代码:kangaroo_web_egg可以关闭自动编译功能,只运行编译后的页面,同时提供了编译整个web应用及隐藏

动态页面源代码的功能。

  kangaroo_web_eggweb服务器的官方网站:kweb.go.3322.org

读书人网 >J2SE开发

热点推荐