2011-12-14 16 views
0

ファイルをBluetooth経由で宛先デバイスに置き換える必要があります。 これにはOBEX(FTPとOPP)のプロファイルが必要であることを知っています。 しかし、私は知らないどのように古いバージョンを削除し、宛先ディレクトリ(javaコード)でファイルの新しいバージョンをコピーすることができます。OBEXでFTPを使用して、BluetoothのJavaコードを使用してファイルを削除し、宛先デバイスにコピーする方法はありますか?

お願いします。

答えて

1

ファイルに対して操作を実行するには、最初にファイルが存在するディレクトリに移動する必要があります。あなたは/ルート/ディレクトリ/サブディレクトリ/ を取得する必要がある場合 exampeためには、以下の書かれた三回

setPath(""); // to get to /root/ 
    setPath("directory") // get to /root/directory/ 
    setPath("subdir") // get to root/directory/subdir/ 

すべてのコードSETPATHを呼び出す必要があります私はセパレータでパスを設定するには、このメソッドを使用するJ2ME ためのものです(例:/ルート/ DIR /)

private void moveToDirectory(String dir) throws IOException { 
     RE r = new RE("/"); // where RE is me.regexp.RE 
     setDir(""); 
     String[] dirs = r.split(dir); 
     for (int i = 1; i < dirs.length; i++) setDir(dirs[i]); 
    } 

あなたがそれにPUT操作を開き、それを閉じ、またはClientSessionのでdeleteメソッドを使用する必要があるファイルを削除します。

public void delete() throws IOException { 
     HeaderSet hs = cs.createHeaderSet(); // where cs is an opened ClientSession 
     hs.setHeader(HeaderSet.NAME, file); // file - is a filename String, no slashes should be used 
     cs.delete(hs); 
    } 

あなたはおそらくオープンのOutputStream、メソッドを削除呼び出す必要があり、そこに書いていないファイル新しい

public OutputStream openOutputStream() throws IOException { 
     HeaderSet hs = cs.createHeaderSet(); 
     hs.setHeader(HeaderSet.NAME, file); 
     Operation op = cs.put(hs); // Operation should be global, so you can close it after you done 
     return op.openOutputStream(); 
    } 

を交換する必要がある場合は、あなたがして行われた後、運転を閉じることを忘れないでくださいストリーム。

関連する問題