因为第一个程序编译后生成的class文件存放在/com.macfaq.net目录下,所以当第二个程序编译时在当前目录就找不到QueryString这个类
把第二个程序也放在com.macfaq.net包中,或者在第二个程序中用com.macfaq.net.QueryString代替QueryString,就可以解决问题

解决方案 »

  1.   

    在第二个程序的开头加多以下这一句,就应该可以了
    import com.macfaq.net;
      

  2.   

    应该加
    import com.macfaq.net.*;

    import com.macfaq.net.QueryString;
      

  3.   

    我加了import com.macfaq.net.*;/**
     * Created by IntelliJ IDEA.
     * User: fengzhizi
     * Date: 2005-2-12
     * Time: 14:39:07
     * To change this template use Options | File Templates.
     */
    import java.net.*;
    import java.io.*;
    import com.macfaq.net.*;public class DMoz {
        public static void main(String args[])
        {
            String target=" ";        for (int i=0;i<args.length;i++)
            {
                target+=args[i]+" ";
            }        target=target.trim();
            QueryString query=new QueryString("search",target);
            try
            {
                URL u=new URL("http://search.dmoz.org/cgi-bin/search?"+query);
                InputStream in=new BufferedInputStream(u.openStream());
                InputStreamReader theHTML=new InputStreamReader(in);
                int c;
                while ((c=theHTML.read())!=-1)
                {
                    System.out.print((char) c);
                }
            }        catch (MalformedURLException e)
            {
                System.err.println(e);
            }
        }
    }但是编译的时候还是出现原来的错误
    DMoz.java:24: cannot access QueryString
    bad class file:.\QueryString.java
    file does not contain class QueryString
    Please remove or make sure it appears in the correct subdirectory of the classpath.
            QueryString query=new QueryString("search",target);
            ^
    1 error
    感谢楼上的几位,但还是请教这是怎么回事??
      

  4.   

    用import com.macfaq.net.QueryString;就行了
    或者在用QueryString时用com.macfaq.net.QueryString代替就行了
    另外InputStream in=new BufferedInputStream(u.openStream());这句会抛出IOException异常
    你应该catch了!
      

  5.   

    问题是javac -d . QueryString.java
    你的第一个类本身就没有按包路径来进行编译呀
    应该在com的上一层目录下用
    javac com/macfaq/net/QueryString.java带包路径编译