首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Graal中使用Python创建/读取文件

在Graal中使用Python创建/读取文件
EN

Stack Overflow用户
提问于 2020-06-25 22:35:32
回答 1查看 198关注 0票数 1

我使用Graal,使用Java和Python等组合语言。当尝试执行Pythonsintax以使用context.eval()读取/创建文件时,我遇到了问题。

我在终端中使用了使用Graalpython的代码:

代码语言:javascript
复制
out_file = File.new("cadena.txt", "w+")
out_file.puts("write your stuff here")
out_file.close 

并且可以工作,但是当我试图运行一个代码来用context.eval()读取文件时:

代码语言:javascript
复制
codigoPython += "fichw = open('cadena.txt','r')";
codigoPython += "fichw.read() ";
codigoPython += "fichw.close() ";
Value filecontent = context.eval("python", codigoPython);

它让我犯了这个错误:

PermissionError:(1,不允许操作,cadena.txt,无,无)

我也尝试使用sudo和sudo运行它,但是它给了我同样的错误。有人知道为什么会这样吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-26 08:03:30

您需要给予上下文执行IO的权限:

代码语言:javascript
复制
Context context = Context.newBuilder("python").allowIO(true).build();

对于实验/原型化,允许一切都是有用的:

代码语言:javascript
复制
Context context = Context.newBuilder("python").allowAllAccess(true).build();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62585323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档