我正在为Android应用程序使用kivy。

目前,我正在开发一款小型游戏...当我想将最高分存储在文件中时,会出现问题。
我正在使用python的openreadlinewritelines但我总是遇到相同的错误

“没有此类文件或目录'score.txt'”

但是我在main.py所在的目录中有一个score.txt文件。

我只是不明白我做错了什么还是在kivy中无法处理文件...
如果还有其他方法,请告诉我。
谢谢

def read():
fr=open("score.txt","r")
line = fr.readline()
fr.close()
h=line.split(':')
high = int(h[1])
if high<disp_score:
    fw=open("score.txt","w")
    seq="highest:" + str(disp_score)
    fw.writelines(seq)
    fw.close()


这是我的文件实现,其中只有行像highest:4000那样编写

最佳答案

您假设当前的workind目录是您的main.py文件所在的目录,但实际情况并非如此,具体取决于平台格式,您可以使用常用的python方法来找到main.py目录,或者可以使用kivy工具(App.directory),或者可以创建不存在的文件(而不是发送文件),并停止关心文件的存放位置。

无论如何,如果要避免文件在升级时被破坏,请确保对应用程序的更新进行一些测试,将其放入应用程序中可能不是最好的主意。

07-24 09:45
查看更多