如何将字节数组写入文件? [复制]

Posted

技术标签:

【中文标题】如何将字节数组写入文件? [复制]【英文标题】:How to write a byteArray into a File? [duplicate] 【发布时间】:2016-07-05 15:54:37 【问题描述】:

所以我正在尝试实现一种将 byteArray 插入文件的方法,并设置一个包含插入的 byteArray 的新 byteArray(如果这有意义的话)。以下是我的代码,但是我很确定出了点问题,因为我的测试失败了,我们将不胜感激。

public void writeBlock(int blockNum, AbstractDBFile f, AbstractBlock b)
            throws IOException 

    f.setCurBlockPos(blockNum);
    byte[] writeData = new byte[4096];
    int currentByte = f.getCurBlockPos() * 4096;
    File ourFile = new File(f.getFileName());
//  Block block = new Block();
    Path path = Paths.get(f.getFileName());
    Files.write(path, writeData, StandardOpenOption.WRITE); //Data is Written

    RandomAccessFile file = new RandomAccessFile(ourFile, "rw");
    FileChannel inChannel = file.getChannel();
    ByteBuffer bb = ByteBuffer.allocate(currentByte);
    inChannel.write(bb);
    while(inChannel.read(bb)>0)
    bb.flip();
    for (int i =0; i<bb.limit(); i++)
        writeData[i]=bb.get();
        b.setData(writeData);
    
    bb.clear();

    inChannel.close();
    file.close();



【问题讨论】:

【参考方案1】:

我推荐使用 APACHE-COMMON-IO,它是一个很好的库来进行文件操作。这个库有很多方法可以用文件编写、复制、移动等。它易于使用。

按照你的方法,我遇到了很多问题。但是现在 e 只使用这个库。

祝你好运

【讨论】:

以上是关于如何将字节数组写入文件? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何将 zip 文件从字节数组写入磁盘

如何将编码 h264 写入文件以外的字节数组

字节流案例——复制文件

为啥将许多小字节数组写入文件比写入一个大数组要快?

在Java中将字节[]写入文件[关闭]

将字节数组中的文件写入 zip 文件