在java中循环代码

时间:2014-04-11 22:42:03

标签: java loops

我编写的代码会将我在另一段代码中的所有信息记录到文本文件中。但是我知道我还没有能够推进变量' u'正确,我不知道该怎么做。

public void writeAllToFile()
  {
    try
    {
      BufferedWriter bw = new BufferedWriter(new FileWriter("SystemData.txt"));
      int i =0;
      String u = emailUsers.getUser(i).username;
      while(u!=null)
      {
        bw.write("" + emailUsers.getUser(i).username);
        bw.newLine();
        bw.write(""+emailUsers.getUser(i).inbox.getNumMessages());
        bw.newLine();
        int j=0;
        String s = emailUsers.getUser(i).inbox.getMessage(j).getSender();
        while(s!=null)
        {
          bw.write("" + emailUsers.getUser(i).inbox.getMessage(j).getSender());
          bw.newLine();
          bw.write("" + emailUsers.getUser(i).inbox.getMessage(j).getReceiver());
          bw.newLine();
          bw.write("" + emailUsers.getUser(i).inbox.getMessage(j).getSubject());
          bw.newLine();
          bw.write("" + emailUsers.getUser(i).inbox.getMessage(j).getBody());
          bw.newLine();
          j++;
        }
        i++;
      }
      bw.close();
    }
    catch(Exception e)
    {
    }
  }

2 个答案:

答案 0 :(得分:0)

变量u仅在while循环之外设置一次,在循环结束后u = emailUsers.getUser(i).username;之后添加i++;应该有所帮助。

答案 1 :(得分:0)

可能你需要提供更多信息,如果你告诉我什么样的对象是emailUsers或者什么样的对象返回方法getUser(int i),我可以帮助你更好。

同时,这可能是有效的:

int i =0; String u = ""; while((u=emailUsers.getUser(i).username)!=null){}