JAVA将数据存储到outputBuffer数组中,当它完整时将其写入文件

时间:2014-01-06 18:31:42

标签: java arrays io

在开始之前,我想说我只有几个小时的java经验。因此,如果它有点容易的问题抱歉。

现在,我有一个字节数组,我将字节存入其中。当它达到最大容量时,我想将其写入二进制文件并继续循环。为此,我实现了以下代码。

// I have an byte array my_array which has already been full 
OutputStream output=null;
output = new BufferedOutputStream(new FileOutputStream(outputFName)); //I'm not sure this
byte [] outputBuffer=new byte[PageSize];

int index=0; // shows the last used index in outputBuffer
for(int i=0;i<13;i++){
     // if my_array[i] holds condition{
           // if index>=PageSize{
                  // write the content of outputBuffer into outputFname
                  index=0;
           }
           // else{
                  outputBuffer[index+1]=my_array[i];
              }
      }
}

现在我不知道如何将其写入文件。有人帮我吗?提前谢谢。

1 个答案:

答案 0 :(得分:1)

只需构建您的OutputStream -

output = new BufferedOutputStream(new FileOutputStream(outputFName), PageSize);

并正常写信给它。您可以让BufferedOutputStream完全按照您的要求行事。 constructor的第二个参数是缓冲区大小。