0

我正在从串口接收数据,我想将数据写入文件。问题是程序正在覆盖文件中同一位置的数据。例如,它在同一个地方写入 0xAA,然后写入 0xBD,当我打开文件以文本编辑方式读取它时,我在文件中只找到一个数字。我怎样才能一个接一个地写数字?杰斯

public class Loading {

    public static void writeFile(String fileName,int bytes) {

        FileOutputStream fo = null;
        File file;


        try {

            file = new File("C:/dar.txt");


            fo = new FileOutputStream(file);

            if (!file.exists())
            { 
                file.createNewFile();
            }

            //StringUtils.getHexString((byte) bytes);
           fo.write((byte) bytes);

            System.out.println(getHexString (bytes));
        }

        catch (Exception e) {
            System.out.println("writeFile exception: " + e.getClass().getName()             + " " + e.getMessage());
        }   
        finally {
            if (fo != null) {try {fo.close();} catch (Exception ex) {}}
        }
    } 
4

1 回答 1

2

如前所述 FileOutputStream 有多个构造函数。使用同时接受 aFile和 a的构造函数,boolean并将布尔值设置为true

FileOutputStream(File file, boolean append)

这将导致它附加到文件中,而不是覆盖...

于 2015-01-27T03:57:48.430 回答