用Java重写文件

用Java重写文件,java,text-files,Java,Text Files,然后我将把not_out替换为当前时间,因为我正在制作一个time-in和time-out程序。 但始终输出是这样的: eg. 11/22/13;8:00;8:30 11/23/13;8:00;not_out 它总是复制我的第一条记录。这不是答案,因此作为“社区维基”发布,但你绝对需要做一些基本的调试。你至少应该做一些类似的事情: 11/22/13;8:00;8:30 11/22/13;8:00;8:30 11/23/13;8:00;8:40 试试看{ Buffered

然后我将把
not_out
替换为当前时间,因为我正在制作一个time-in和time-out程序。 但始终输出是这样的:

eg. 11/22/13;8:00;8:30
    11/23/13;8:00;not_out

它总是复制我的第一条记录。

这不是答案,因此作为“社区维基”发布,但你绝对需要做一些基本的调试。你至少应该做一些类似的事情:

  11/22/13;8:00;8:30
  11/22/13;8:00;8:30
  11/23/13;8:00;8:40 
试试看{
BufferedReader br=新的BufferedReader(新的文件阅读器(用户+“.txt”);
字符串时间=t.toString();
而((line=br.readLine())!=null){
String[]check=line.split(“;”);
System.out.println(“check:+java.util.array.toString(check));
日期。添加(勾选[0]);
timeIn.add(勾选[1]);
超时。添加(检查[2]);
}
br.close();
BufferedWriter bw=新的BufferedWriter(新文件编写器(用户+“.txt”);
if(timeOut.contains(“not_out”)){
indx=超时.indexOf(“未超时”);
timeOut.set(indx,time);
}

对于(int i=0;我正在阅读后正确地关闭文件???看起来好像什么地方都没有关闭…这是一个非常不完整的问题,您留下了太多的漏洞,我们无法提供帮助。
ti(i)
do做什么?to(i)做什么
do?它们有什么功能?你调试过这些家伙吗?为什么不使用你填写的timeIn和timeOut集合?至少你应该输入一些println语句,看看问题出在哪里。ti(i)是一种获取TimeTo(i)中数组列表中元素的方法与ti方法类似,但它获取数组列表中的元素超时。@user3194331:再次,您检查过ArrayList包含的内容吗?您能给我们看一下您的方法和ArrayList吗?您能给我们看一下timeIn和timeOut变量的代码吗?是的,我已经检查过我的ArrayList。我认为这不是覆盖的问题,谢谢在你的评论中我意识到问题出在我的数组列表中我以前的数据没有被删除这就是为什么我的文章中包含了这些数据。现在我想我应该在再次放置元素之前先清除数组列表
  11/22/13;8:00;8:30
  11/22/13;8:00;8:30
  11/23/13;8:00;8:40 
try{

     BufferedReader br = new BufferedReader(new FileReader(user+".txt"));

     String time = t.toString();

     while((line=br.readLine())!=null){
         String [] check = line.split(";");
         System.out.println("check: " + java.util.Arrays.toString(check));
         date.add(check[0]);
         timeIn.add(check[1]);
         timeOut.add(check[2]);
     }
     br.close();


     BufferedWriter bw = new BufferedWriter(new FileWriter(user+".txt"));


     if(timeOut.contains("not_out")){
        indx = timeOut.indexOf("not_out");
        timeOut.set(indx, time);       
     }

     for (int i = 0 ; i <date.size();i++ ){
        d =getDate(i);
        ti= ti(i);
        to= to(i);    

        // ***** added  *****
        System.out.printf("i: %d, d: %s, ti: %s, to: %s%n", i, d, ti, to);
        bw.write(d+";"+ti+";"+to);
        bw.newLine();
     }          
     bw.close();
   } catch(Exception e){
     System.out.println("Time out error");
     e.printStackTrace();
   }
   return true;
}