【问题标题】:Java - Writing a file using randomAccessFileJava - 使用 randomAccessFile 编写文件
【发布时间】:2013-11-01 14:56:01
【问题描述】:

我正在尝试创建一个 .dat 文件,该文件分为 5 列,每列的标题为“timestamp”、“deviceId”、“testId”、“Availability”和“Latency”。 该文件将指向当前正在运行测试的数据库。

我们的想法是收集来自这些测试的数据并将其存储到我刚刚创建的这个文件中。

我被告知要使用和使用 RandomAccessFile。

唯一的问题是我不知道如何通过 Java 编写文件。 我做了一些尝试,但一点也没有;

public long timestamp;
public int deviceId;
public int testId;
public byte availability;
public int latency;

public static void main (String [] args) throws FileNotFoundException
{
    String fileName = "hopeToJaysusThisWorks.dat";

    RandomAccessFile file = new RandomAccessFile(fileName, "rw"); 
}

如您所见,它一点也不多!

有人告诉我不要担心进入技术方面,即数据收集。目前我只需要每列的布局及其 5 个标题。

谁能帮助我或给我一些关于从这里去哪里的建议,将不胜感激。

【问题讨论】:

  • 也许以the tutorial开头?
  • RandomAccessFile 最适合使用固定大小和/或二进制数据格式。你什么都不做。听起来您正在尝试编写 csv 或其他一些简单的字符分隔的平面文件格式。使用一个简单的 Writer 和/或找到一个现有的库来编写您想要使用的格式。
  • 数据将采用二进制格式,因此我被告知使用 RandomAccessFile

标签: java randomaccessfile


【解决方案1】:

下一步对您来说,将确保您刚刚尝试打开以进行读/写的文件(这就是“rw”选项的含义,如果您只给它一个 r 或只给它一个 w,它只是用于读取,或仅分别写),实际上是打开/可用的。您可以通过简单地运行检查来查看您的“文件”变量是否为空来执行此操作。好,很好!现在您需要实际开始将一些信息写入文件。这可以采用多种形式,我建议查看RandomaccessFile api 以确切了解可用的方法,以及您的数据必须采用哪种形式才能写入。

它看起来像:

if (file != null){
    file.write(myByteArray[]);
}

现在,您可能已经对数据进行了结构化,但这就是它的一般要点。

祝你好运!

【讨论】:

    猜你喜欢
    • 2019-06-25
    • 2013-05-02
    • 1970-01-01
    • 1970-01-01
    • 2011-08-21
    • 1970-01-01
    • 2015-09-23
    • 2016-07-17
    • 1970-01-01
    相关资源
    最近更新 更多