我在Android手机上安装了QPython。 我在QEdit中写了一条声明,从下面的路径中读取文本文件
/storage/emulated/0/com.hipipal.qpyplus/script3/File1.txt
我使用了以下声明
fob=open('/storage/emulated/0/com.hipipal.qpyplus/script3/File1.txt','r')
fob.read()
如果我运行该语句,则会抛出错误:
IOError:[Errno 2] No such file or directory: '/storage/emulated/0/com.hipipal.qpyplus/script3/File1.txt'
1|uo_a116@cancro:/ $
以上陈述是否正确?
答案 0 :(得分:3)
fob=open('File1.txt','r')
不适用于1.0.4版。
fout=open('File2.txt','w')
正在使用0.9.6版本,但在1.0.4中无效。 "错误"是只读文件系统。
它看起来像(新的1.0.4)文件系统库中的限制。我发邮件给编辑,但此时没有回答。
答案 1 :(得分:1)
为了进行测试,请尝试写入指向文件的绝对路径,例如指向sdcard(/sdcard/out.txt)。 我在这个版本上遇到了问题(> = 1.0.4),因为脚本更改和执行目录的启动过程与脚本目录不同。 我不得不改变我的脚本以指向绝对路径。 它是使用qpython开发人员测试的。
检查此链接:
答案 2 :(得分:0)
您也可以尝试这样简单:
fob=open('File1.txt','r')
fob.read()
如果脚本位于文件的同一文件夹中。
答案 3 :(得分:0)
您可以在读取文件之前将当前工作目录更改为带脚本的路径:
import os
os.chdir(os.path.dirname(os.path.abspath(__file__)))