java.lang.Security Exception:Access deniedを解決します。
NOKIAのいくつかのディレクトリはファイルを作成することができませんので、java.lang.Security Exception:Access deniedを投げます。ヒントを与えるだけでいいです。またはユーザーをそのサブディレクトリに導いてファイルを作成します。問題は解決できます。例コードは以下の通りです。
private void createFile(String fileName) {
String fileExt = "";
{
int idx = fileName.lastIndexOf('.');
if (idx > 0) {
fileExt = fileName.substring(idx, fileName.length());
fileName = fileName.substring(0, idx);
}
}
try {
currDir = (FileConnection) Connector.open("file:///" + currDirName
+ fileName + fileExt, Connector.WRITE);
currDir.create();
}catch (SecurityException e) {
Alert alert = new Alert("Error!", "Can not access/delete file "
+ fileName + " in directory " + currDirName
+ "
Exception: " + e.getMessage(), null, AlertType.ERROR);
alert.setTimeout(Alert.FOREVER);
FileMIDlet.display.setCurrent(alert);
}catch (IOException e) {
e.printStackTrace();
try {
currDir = (FileConnection) Connector.open("file:///"
+ currDirName + fileName + "(" + genId() + ")"
+ fileExt, Connector.WRITE);
currDir.create();
} catch (IOException e1) {
// TODO Auto-generated catch block
currDir = null;
}
}
}