2016-11-11 4 views
1

У меня есть программа python. весь код может работать в python.Почему java не может сохранить программу pdon rdf RDF локально?

, что означает, что я могу использовать python для запуска ontology.py и генерировать myOntology.rdf локально.

здесь некоторая часть кода:

print"~~~~~~~~~~~generate myOntology.rdf~~~~~~~~" 
gs = Graph() 
graph=getRDF(Triple) 
for g in graph: 
    gs=gs+g 
gs.serialize(format='xml') 
print gs.serialize(format='xml') ### in java ____ OK 

print "save locally???........" 

print gs.serialize("myOntology.rdf",format="xml") 
##in java______Python Output: None 

print gs.serialize(destination="D:\\Desktop\\myOntology.rdf",format="xml") 
##in java__ no response 
print"~~finish !!! ~generate myOntology.rdf~~~~~~~~" 

Однако, когда я использую Java позвонить pyhton и запустить ontology.py. программа остановилась, чтобы сохранить rdf локально. Примечание: моя java-программа верна!

enter image description here

Я действительно не знаю, что это вопрос, как код питона и Java кода являются правильными. , но когда java вызывает python для запуска py, rdf не может быть сохранен локально.

+0

Я бы проверял настройки разрешения записи любого пользователя java, запущенного в вашей системе – Sharky

+0

, когда я использую python, запустите 1-ю программу python, чтобы сохранить файл rdf локально. затем используйте java для запуска другого кода python. Это работает. Нет ошибок. В моем случае у меня есть 3 кода программы python. 1-я программа python: генерировать rdf (это myOntology.rdf), 2-я программа python: сравнивать. Третья программа python: проанализировать – bob90937

ответ

1
file = open("output.rdf", "w") 
results.serialize(destination=file, format="xml") 
file.flush() 
file.close() 

Я добавлю файл открытым, закрытым ... проблема решена. Но я не знаю, почему это работает.

Смежные вопросы