解决java.lang.SecurityException: Access denied

NOKIA的一些目录不允许创建文件,所以会抛出java.lang.SecurityException: 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
					+ "\nException: " + 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;
			}
		}
	}

 

你可能感兴趣的:(java,prototype,软件测试,Access,Nokia)