无法读取我从字节数组写入的输出文件

我目前正在编写一个将数据包读入Byte数组的日志记录应用程序。然后,我将此数组输出到文件中。当我随后打开文件时,它无法读取为UTF-8格式。我想知道是否有一种方法可以创建可读的输出文件。下面提供了一个代码示例:

...

    public void startDisplay(String groupAddress){

    logisRunning = true;

     try{ DataNet = new NetworkInput(ipAddress, groupAddress, dataPort, 
     logDataQueue); } catch(IOException ex){ 
     Logger.getLogger(LogPanel.class.getName()).log(Level.SEVERE,null,ex); }

     logTask = new Thread(displayThread());
     logTask.start();     
    }

    protected Runnable displayThread(){ return new Runnable(){ 
        public void run() 
        {

          byte[] dataPacket = null;
          BufferedOutputStream bos = null;

          try{
           bos = new BufferedOutputStream(new FileOutputStream("/home/test.log"
          } 
          catch (FileNotFoundException ex){
           Logger.getLogger(LogPanel.class.getName()).log(Level.SEVERE,null,ex);
          }

          while(logisRunning){
           try{
              dataPacket = logDataQueue.take();
              } catch (InterruptedException ex){
              }

           if(dataPacket != null && dataPacket.length > 0) {

           try{
             bos.write(dataPacket, 0, dataPacket.length);
             } catch(IOException ex) {                      

           Logger.getLogger(LogPanel.class.getName()).log(Level.SEVERE,null,ex);
            }
       }
    }

    try{
       bos.flush();
       bos.close();
    } catch(IOException ex) { 
       System.out.println(ex);
     }
   }
 };

...

使用调试器时,我可以看到缓冲输出流中每个字节中的数据。但是正如我之前所说,当我打开test.log时,它是UTF-8格式的,我看不懂。简而言之,我需要一个可读的输出文件。