该程序没有任何问题。我运行的很好。
javac  UseRandomAccessFile.javajava  -cp  .;%CLASSPATH%   UseRandomAccessFile  tt.txt你在dos控制台输入上面两行命令,应该OK!
注意参数tt.txt是输入数据的保存文件。

解决方案 »

  1.   

    错误如下:
    java.lang.ArrayIndexOutOfBoundsException: 0 at UseRandomAccessFile.main(UseRandomAccessFile.java:22)发生I/O错误
      

  2.   

    用JB运行也可以,但你没有理解程序的意思。你也没有理解main方法中String[] 形参的作用。由于你没有传递初始参数,所以args数组的长度为0,但你的代码中使用了args[0],但该下标没有,所以报下标越界。
    因为你的程序运行必须提供一个保存输入的五行数据的文件的文件名。在JB中你也必须提供。
    比如我们常用的命令ping.exe   127.0.0.1中的IP就是程序运行的参数。
    还有word.exe  mydoc.doc后的mydoc.doc就是程序运行的参数。
    还有iexplore.exe   E:\Resource\myLink.html后的html文件也是参数。
    我们在java中怎样带初始参数呢?与前面一样。
    java  ****  op
    其中****表示class文件,op字符串会通过main的String[] args传递。
    举一个例子
    public class   test
    {
       public static void main(String[] ss)
       {
            System.out.println("你传递的是:");
            if(ss.length>=1)
            {
               for(int i=0;i<ss.length-1;i++)
               {
                  System.out.println(ss[i]);
               }
            }        
       }
    }若你编译后用
    java  test   ttt wwww  tttt 
    控制台上会打印
    你传递的是:
    ttt
    wwww
    tttt  
    我这样说你应该明白了吧???
    可以再留言。