Отправить файл между двумя мобильными телефонами через Bluetooth с помощью Python - PullRequest
0 голосов
/ 21 апреля 2011

Я пытаюсь отправить файл между двумя мобильными телефонами, используя язык Python

для телефона, который отправит, я использовал этот код:

import socket,e32socket,appuifw
socket=e32socket.socket(e32socket.AF_BT,e32socket.SOCK_STREAM,e32socket.BTPROTO_RFCOMM,e32socket.OBEX)
device =e32socket.bt_obex_discover()
print device
address=device[0]
print address
channel=device[1][u'OBEX Object Push']
print channel
e32socket.bt_obex_send_file(address,channel,u"E:23.txt")

для мобильного телефона, который получит, я использовал этот код

import socket,e32socket,appuifw
socket=e32socket.socket(e32socket.AF_BT,e32socket.SOCK_STREAM,e32socket.BTPROTO_RFCOMM,e32socket.OBEX)
e32socket.bt_obex_receive(socket, u"E:23.txt")

Я сохранил первый код в .py в moible, затем извинился, используя интерпретатор python, сначала появилось меню обнаружения bluetooth, затем я выбрал мобильный телефон с MAC-адресом, который находится в первом коде, ошибка в последнем строка в этом коде "" socket.error: (2, 'Нет такого файла или каталога') "" это ошибка, которую я нашел

Может кто-нибудь помочь мне решить эту проблему?

1 Ответ

0 голосов
/ 30 апреля 2011

Например, «E: 23.txt» не является допустимым путем к файлу.Всегда помните свои косые черты, они очень важны!Таким образом, вы изменили бы его с:

e32socket.bt_obex_send_file(address,channel,u"E:23.txt")

на

e32socket.bt_obex_send_file(address,channel,u"E:\\23.txt")

Кроме того, я не совсем знаком с bt_obex_receive, но вы также захотите исправить этот путь.

Кроме того, вы импортируете модуль appuifw без его использования.Если вы не планируете добавлять код, который его использует, импортировать его очень неэффективно.

...