gpt4 book ai didi

Java - BufferedWriter 不写(在 flush() 之后)

转载 作者:行者123 更新时间:2023-11-30 09:38:42 28 4
gpt4 key购买 nike

回答:您不能将 int 直接写入文件。先转为字符串。


原始问题:

我知道这听起来像是一个菜鸟问题,但我无处可求。

我正在尝试让 Java 将 Epoch(时间戳)写入 .session 文件(不要问)。它似乎没有做任何事情。这是我所拥有的:

    gamesession = new File(SESSION_LOCATION);   // Sets the .session file

if(gamesession.exists()){
gamesession.delete();
gamesession.createNewFile();

FileWriter stream = new FileWriter(SESSION_LOCATION);
BufferedWriter out = new BufferedWriter(stream);

out.write(GetTimestamp());
out.flush();
} // These blocks write the Epoch to the .session file for later time
else{
gamesession.createNewFile();

FileWriter stream = new FileWriter(SESSION_LOCATION);
BufferedWriter out = new BufferedWriter(stream);

out.write(GetTimestamp());
out.flush();
}

是的,该方法是DECLARED 抛出 IOException(在运行时没有发生)。问题是,我正在写入的 .session 文件总是空的。我冲错了吗?请帮助我阐明这一点。感谢您的宝贵时间。

仅供引用: Epoch 计算正确,正如我所做的System.out.println(GetTimestamp())

GetTimestamp() 是我的方法。它是静态的。

最佳答案

您还需要确保调用 out.close() 方法。我注意到,有时在处理文件时,如果您不关闭它们,内容就不会显示。

GetTimestamp() 返回什么类型?根据BufferedWriter API write 方法采用一个应该是字符的 int。我怀疑您的时间戳是单个字符。

关于Java - BufferedWriter 不写(在 flush() 之后),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10005339/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com