您好,我想創建一個文件並在其中寫入一些數據,之後我想爲該文件分配只讀權限,以便其他人不能修改它。如何將只讀權限分配給文件
我已經寫了部分 但我沒有任何想法如何設置只讀權限並刪除其他所有權限 我試過setReadOnly();但它不起作用。
請讓我知道是否有任何解決方案。 謝謝你在先進的...
我曾嘗試以下,但它不工作
String currentDateTimeString;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH.mm.ss");//date format
currentDateTimeString = sdf.format(new Date());//current date
File recordFolder = new File(Environment.getExternalStorageDirectory(), "WBS/Record");
recordFolder.mkdirs(); // <----make a folder
File file = new File(recordFolder, currentDateTimeString+".xml");//create the images
File dbtest =new File("/data/data/com/ami/wbs/databases/WBS");
if(!dbtest.exists())
{
// what to do if it does exist
// Toast.makeText(getApplicationContext(), "DB is present", Toast.LENGTH_LONG).show();
}
else
{
// what to do if it doesn't exist
//Toast.makeText(getApplicationContext(), "DB is not present", Toast.LENGTH_LONG).show();
}
database = new DB_Adapter(getApplicationContext(), "WBS", null, 1);
FileWriter filewrite = null;
//BufferedWriter filewrite = null;
try {
//filewrite = new BufferedWriter(new OutputStreamWriter(openFileOutput(currentDateTimeString+".xml", MODE_PRIVATE)));
filewrite = new FileWriter(file,true);
filewrite.write("<?xml version='1.0' ?>");
filewrite.write("<Resultset>");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
SQLiteDatabase db=database.getReadableDatabase();
Cursor c = db.rawQuery("Select CONSUMER_ID,METER_NO,PREV_READING,CURR_READING from CONSUMER;", null);
if(c.moveToNext())
{
// Toast.makeText(getApplicationContext(),"Table found", Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(getApplicationContext(),"Table not found", Toast.LENGTH_SHORT).show();
}
c.moveToFirst();
do
{
String consumerid=c.getString(c.getColumnIndex("CONSUMER_ID"));
String meterno=c.getString(c.getColumnIndex("METER_NO"));
String currentreading=c.getString(c.getColumnIndex("CURR_READING"));
try {
filewrite.write("<consumer>"
+"<consumerid>"+consumerid+"</consumerid>"
+"<meter>"+meterno+"</meter>"
+"<curread>"+currentreading+"</curread></consumer>");
filewrite.write("</Resultset>");
filewrite.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}while(c.moveToNext());
file.setReadOnly();
Toast.makeText(getApplicationContext(), "Export file successfully", Toast.LENGTH_SHORT).show();
你是什麼意思'不工作'?你是否收到任何錯誤/例外? –