申し訳ありませんが、私は BlackBerry 開発に非常に慣れていません。mp3 ファイル (HTTP サーバーからダウンロード) を保存し、それを再生するだけです。ほとんどのコードを実行しましたが、ファイル システム エラー 1003 が引き続き発生します(BlackBerry JDE 4.5.0 を使用する必要があります)。
try {
FileConnection fconn = (FileConnection) Connector.open( "file://data/myfile.mp3", Connector.READ_WRITE );
final HttpConnection connection = (HttpConnection) Connector.open("http://som.server.com/andFile.mp3;interface=wifi");
if (!fconn.exists()) {
fconn.create();
} else {
fconn.delete();
fconn = (FileConnection) Connector.open( "file://data/myfile.mp3", Connector.READ_WRITE );
fconn.create();
}
final InputStream inputStream = connection.openInputStream();
final StringBuffer buffer = new StringBuffer();
try {
int ch;
while ( ( ch = inputStream.read() ) != -1 ) {
buffer.append( (char) ch );
} finally {
inputStream.close();
connection.close();
}
fconn.setWritable(true);
final OutputStream outputStream = fconn.openOutputStream();
outputStream.write(buffer.toString().getBytes());
outputStream.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}
final Player mPlayer;
final VolumeControl vc;
final InputStream is = getClass().getResourceAsStream("data/myfile.mp3");
try {
mPlayer = Manager.createPlayer(is, "audio/mpeg");
mPlayer.addPlayerListener(WelcomeScreen.this);
mPlayer.realize();
mPlayer.prefetch();
vc = (VolumeControl) mPlayer.getControl("VolumeControl");
vc.setLevel(50);
mPlayer.start();
} catch (Exception e) {
System.out.println(e.getMessage());
}
上記のコードでは、保存したファイルを再生しようとしていますが、ファイル システム エラーが発生します。デバイスを確認したところ、ファイルは実際に一度正しく保存されたようです。
アプリケーション データ フォルダの下にファイルを保存するために使用する正しいパスは何ですか?