gpt4 book ai didi

java - Libgdx FileHandle读写多行

转载 作者:行者123 更新时间:2023-12-01 09:55:18 25 4
gpt4 key购买 nike

很好又简单的问题..我使用文件句柄来写入和读取分数..胜利和失败..但与缓冲阅读器不同,你不能使用 read.line();那么如何在文件处理程序中写入和读取行?谢谢,这是代码

    private void writeSaveData()
{
winstring = Integer.toString(wins);
lossstring = Integer.toString(losses);

FileHandle scores = Gdx.files.local("Score");
scores.writeString(winstring, false);
// I want to add another line here for lossess
}


private void loadScores()
{
FileHandle scores = Gdx.files.local("Score");
winstringread= scores.readString(winstring);
wins = Integer.parseInt(winstringread);
// same here add line to read lossess
}

最佳答案

对于 libgdx 和您所描述的这个特定问题。您可以读取和写入整个字符串并解析分隔符。

非人类可读。我们在这里所做的是采用字符串格式,这样我们就可以清楚地看到该行将如何编写。我们首先计算获胜分数,然后计算失败分数,因此,如果我赢了 10 场,而他们输了 5 场,则字符串将类似于 10=5。这将保存到文件中。当我们读回文件时,我们读取 10=5 ,然后将该字符串拆分为 = ,留下两个字符串 10 >5。然后我们可以将它们解析为整数。

private void writeSaveData()
{
String saveString = String.format("%d=%d", wins, losses);
FileHandle scores = Gdx.files.local("Score");
scores.writeString(saveString, false);
}


private void loadScores()
{
FileHandle scores = Gdx.files.local("Score");
String loaddedString = scores.readString(winstring);
String[] scores = loadedString.split("=");
wins = Integer.parseInt(scores[0]);
losses = Integer.parseInt(scores[1])
}

关于java - Libgdx FileHandle读写多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37283273/

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