老实讲,看来你用java没几天,
将main方法里的vs 定义到class级就行了。
import java.io.*;
import java.util.*;
public class MyReadFile{
  Vector vs=new Vector();//现在放在这里
  public static void main(String[] args){
    //Vector vs=new Vector();原本你是放在这里的
    DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInputStream("text.txt")));
    String s,s2=new String();
    while ((s=in.readLine())!=null)
      {s2=s+'\n';
      vs.addElement(s2);}
  }  public MyReadFile(){
    while(vs.hasMoreElements())
    System.out.println(""+vs.nextElement());
  }
}

解决方案 »

  1.   

      你的vs变量不是public
      在另一个过程中当然找不到
      

  2.   

    你的vs是在main中定义的。
    MyReadFile是另一个method,他不会认识main中的方法变量的。
      

  3.   

    你的public MyReadFile()中的vs就没有定义,当然会找不到变量vs了!!将程序按照标准格式书写,更有利于你寻找错误!!
      

  4.   

    我有个疑问,
    Vector有hasMoreElements和nextElement两个方法吗?我只要一编译就报错。
    我查了api也没有两个方法。
      

  5.   

    我查了api 只有 Enumeration 中才又这两个方法。
      

  6.   

    我按照第一个老哥的方法编译,还是提示错误,说方法hasMoreElements和nextElement不对啊!`
      

  7.   

    我现在把程序改为:
    import java.io.*;
    import java.util.*;
    public class MyReadFile{
      Vector vs=new Vector();
        public static void main(String[] args){
        DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInputStream("text.txt")));
        String s,s2=new String();
        while ((s=in.readLine())!=null)
          {s2=s+'\n';
          vs.addElement(s2);}
      }  public MyReadFile(){
        for (int i=0;i<vs.size();i++)
        System.out.println(vs.elementAt(i));  }
    }
    可是还是报错误如下:MyReadFile.java:10: 在静态上下文中不能引用非静态变量 vs
          vs.addElement(s2);}
          ^
    注意:
    MyReadFile.java 使用或覆盖一个不鼓励使用的API。
    注意:
    使用-deprecation重新编译,以得到详细信息。
    1 个错误
    哪为老哥把我改一下啊分不够再加啊~~~
      

  8.   

    老姐帮你吧:)
    在main函数中加上:
    MyReadFile read=new MyReadFile();
    read.vs.addElement(s2);
    希望能帮到你
      

  9.   

    你的问题太多了,要记住,java中很多都是以xxx。xxx进行饮用的,一切都是对象!!你
    另外,例外在这里必须捕获。 
    try {
          Vector vs=new Vector();
          DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInputStream("text.txt")));
          String s,s2=new String();
          while ((s=in.readLine())!=null) {
           s2=s+'\n';
            vs.addElement(s2);
        }
        for (int i=0;i<vs.size();i++)
        System.out.println(vs.elementAt(i));
      } catch (FileNotFoundException ex) {
      } catch (IOException ex) {
      }这回每问题了。
      

  10.   

    import java.util.*;
    public class MyReadFile{
        static Vector vs=new Vector();
        public static void main(String[] args){
        try{
        DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInputStream("text.txt")));
        String s,s2=new String();
        while ((s=in.readLine())!=null)
        {
          s2=s+'\n';
          vs.addElement(s2);}
        }catch(Exception e)
        {
            e.printStackTrace();
        }
        MyReadFile readFile = new MyReadFile();
      }
      public MyReadFile(){
        for (int i=0;i<vs.size();i++)
        System.out.println(vs.elementAt(i));  }
    }
      

  11.   

    楼上的这位对,在vector前加上static也可行
      

  12.   

    仔细看看static标志符的用法。知其然,而不知其所以然,是很难深入的。这是我学习c++(by vc)和java的痛苦经验。
      

  13.   

    to:Athene:
    我把你的程序编译了一下抱错误啊~~
    错误为:
    MyReadFile.java:6: 不能解析符号
    符号:类 DataInputStream
    位置:类 in MyReadFile
        DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInput
    Stream("text.txt")));
        ^
    MyReadFile.java:6: 不能解析符号
    符号:类 DataInputStream
    位置:类 in MyReadFile
        DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInput
    Stream("text.txt")));
                               ^
    MyReadFile.java:6: 不能解析符号
    符号:类 BufferedInputStream
    位置:类 in MyReadFile
        DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInput
    Stream("text.txt")));
                                                   ^
    MyReadFile.java:6: 不能解析符号
    符号:类 FileInputStream
    位置:类 in MyReadFile
        DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInput
    Stream("text.txt")));
                                                                           ^
    4 个错误
    是怎么回事?是不是text.txt文件的位置不对?我把它放到了和MyReadFile.java的同一个目录下啊~~
      

  14.   

    谢谢大家对我的帮助啊|~~
    我刚学JAVA没几天、`有好多东西搞不清楚啊~~
      

  15.   

    在import java.util.*;
    后加上import java.io.*;我只能说,您要学的实在太多。