你先在d:\放一个EE.txt的文件就行了。
还有,我发现我跟你看都是同一本书。

解决方案 »

  1.   

    这是我照书上写的程序
    <%@page import="java.util.*,java.lang.*,java.io.* " %>
    <%
       String action=request.getParameter("action");
       String toup=request.getParameter("toup");
       String mydata="";
       if (action.compareTo("toupiao")==0)
       {
          /*   生成文件路径和文件名 */
       String resultdir="c:";
       FileWriter resultfile=new 
           FileWriter(resultdir+System.getProperty("file.separator")+"ee.txt",true);
       /* 判断文件是否存在*/
       File myfile=new File(resultdir+System.getProperty("file.separator")+"ee.txt");
       if (!(myfile.exists()))
       {
       /* 第一次投票*/
       PrintWriter toFile=new PrintWriter(resultfile);
       if (toup.compareTo("1")==0) mydata="1:0:0";
       if (toup.compareTo("2")==0) mydata="0:1:0";
       if (toup.compareTo("3")==0) mydata="0:0:1";
       toFile.println(mydata);
       resultfile.close();
       out.println("mydata");
       }
       else
       {
       /* 其他次投票  */
       FileInputStream tfile=new 
           FileInputStream(resultdir+System.getProperty("file.separator")+"ee.txt");
       String str="";
       int c;
       while ((c=tfile.read())!=-1)
       {
       str=str+(char) c;
       }
       int first=str.indexOf(":");
       int last=str.lastIndexOf(":");
           int length=str.length();
       String First=str.substring(0,first);
       String Next=str.substring(first+1,last);
       String Last=str.substring(last+1,length);
       tfile.close();    Long a1=new Long(First);
       Long a2=new Long(Next);
       Long a3=new Long(Last);
       long b1=a1.longValue();
       long b2=a2.longValue();
       long b3=a3.longValue();
       if (toup.compareTo("1")==0)  b1=b1+1;
       if (toup.compareTo("2")==0) b2=b2+1;
       if (toup.compareTo("3")==0) b3=b3+1;
       Long c1=new Long(b1);
       Long c2=new Long(b2);
       Long c3=new Long(b3);
       String d1=c1.toString();
       String d2=c2.toString();
       String d3=c3.toString();
       str =d1+":"+d2+":"+d3;
       RandomAccessFile savefile=new 
           RandomAccessFile(resultdir+System.getProperty("file.separator")+"ee.txt","rw");
       savefile.writeBytes(str);
       savefile.close();
       }
     %>
       <script language="javascript">
       alert("aaa");
       self.location="tou.jsp";
       </script>
       <%
       }
       %>
      

  2.   

    因为你的action变量是null值;
    然后你再调用他的方法(.compareTo);
    java就会报空指针错误,即你出现的错误;
    解决办法就是先对action进行判断,如空值则赋予一个变量;否则返回原值
      

  3.   

    是的,你的action变量是个null值,所以你要
    进行判断,if(action!=null)
    然后进行compareTo就可以了,我以前也遇到这个问题的,这么解决就可以了,
    因为action如空话,就会出错了。这么改吧,希望你成功。
      

  4.   

    if (toup.compareTo("1")==0) {}这种写法是一种不好的习惯,因为它有可能抛例外;最好写成
    if ("1".compareTo(toup))==0 {},这是一种很好的习惯,虽然很少有书上提到过。