读 写 权限

原创 2015年11月18日 14:45:52


写权限:

package com.example.write;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;


public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	
		//创建一个私有的private.txt文件
		writeFile(this,"private.txt",this.MODE_PRIVATE);
		//创建一个可读的readable.txt文件
		writeFile(this,"readable.txt", this.MODE_WORLD_READABLE);
		
		//创建一个可写的writeable.txt文件
		writeFile(this,"writeable.txt", this.MODE_WORLD_WRITEABLE);
		
		//创建一个可读可写的rwable.txt文件
		writeFile(this,"rwable.txt", this.MODE_WORLD_READABLE + this.MODE_WORLD_WRITEABLE);
	}

	

	private void writeFile(Context context, String fileName,int mode) {
			
		//新的API函数
		try {
			FileOutputStream out = openFileOutput(fileName, mode);
		
			out.write("I am 1505".getBytes());
			
			out.flush();
			out.close();
			
		} catch (FileNotFoundException e) {
		
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

	
}

读权限:

package com.xh.tx.read;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener{

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	

	Button button=(Button)findViewById(R.id.btn_read_private);
	button.setOnClickListener(this);
	
	button = (Button) findViewById(R.id.btn_write_private);
	button.setOnClickListener(this);
	
	button = (Button) findViewById(R.id.btn_read_readable);
	button.setOnClickListener(this);
	
	button = (Button) findViewById(R.id.btn_write_readable);
	button.setOnClickListener(this);
	
	button = (Button) findViewById(R.id.btn_read_writeable);
	button.setOnClickListener(this);
	
	button = (Button) findViewById(R.id.btn_write_writeable);
	button.setOnClickListener(this);
	
	button = (Button) findViewById(R.id.btn_read_rw);
	button.setOnClickListener(this);
	
	button = (Button) findViewById(R.id.btn_write_rw);
	button.setOnClickListener(this);
    }
	@Override
	public void onClick(View v) {
		File privatepath = new File("/data/data/com.example.write/files/private.txt");
		File readablepath = new File("/data/data/com.example.write/files/readable.txt");
		File writeablepath = new File("/data/data/com.example.write/files/writeable.txt");
		File rwpath = new File("/data/data/com.example.write/files/rwable.txt");
		
		switch(v.getId()){
		case R.id.btn_read_private://写私有文件
		
			try {
				FileInputStream in=new FileInputStream(privatepath);
				byte[] buffer = new byte[in.available()];//available() 获取一个文件里面有多少个byte
				
				in.read(buffer);
				if(null!=buffer && buffer.length>0){
					FileOutputStream out = new FileOutputStream(privatepath);
					out.write("被日了".getBytes());
					Toast.makeText(this, "读取成功", Toast.LENGTH_SHORT).show();
					
				}
			} catch (Exception e) {
				
				Toast.makeText(this, "读取失败", Toast.LENGTH_SHORT).show();
				
				e.printStackTrace();
			}
			break;
		case R.id.btn_write_private: //读私有文件
			try {
				FileOutputStream out = new FileOutputStream(privatepath);
				
				out.write("被日了".getBytes());
				
				Toast.makeText(this, "写入成功", Toast.LENGTH_SHORT).show();
				
			} catch (Exception e) {
				Toast.makeText(this, "写入失败", Toast.LENGTH_SHORT).show();
				e.printStackTrace();
			}
		
			break;
		case R.id.btn_read_readable: //写可写文件
			try {
				FileInputStream in = new FileInputStream(readablepath);
				byte[] buffer = new byte[in.available()]; // available() 获取一个文件里面有多少个byte
				
				in.read(buffer);
				
				if(null != buffer && buffer.length > 0)
				{
					Toast.makeText(this, "读取成功:" + new String(buffer), Toast.LENGTH_SHORT).show();
				}
				
			} catch (Exception e) {
				
				Toast.makeText(this, "读取失败", Toast.LENGTH_SHORT).show();
				e.printStackTrace();
			}
			break;
		case R.id.btn_write_readable: //写可读文件
			try {
				FileOutputStream out = new FileOutputStream(readablepath);
				
				out.write("被日了".getBytes());
				
				Toast.makeText(this, "写入成功", Toast.LENGTH_SHORT).show();
				
			} catch (Exception e) {
				Toast.makeText(this, "写入失败", Toast.LENGTH_SHORT).show();
				e.printStackTrace();
			}
		
			break;
		case R.id.btn_read_writeable: //读可写文件
			try {
				FileInputStream in = new FileInputStream(writeablepath);
				byte[] buffer = new byte[in.available()]; // available() 获取一个文件里面有多少个byte
				
				in.read(buffer);
				
				if(null != buffer && buffer.length > 0)
				{
					FileOutputStream out = new FileOutputStream(writeablepath);
					out.write("被 日了".getBytes());
					Toast.makeText(this, "读取成功:" + new String(buffer), Toast.LENGTH_SHORT).show();
				}
				
			} catch (Exception e) {
				
				Toast.makeText(this, "读取失败", Toast.LENGTH_SHORT).show();
				e.printStackTrace();
			}
			break;
		case R.id.btn_write_writeable: //读可读文件
			try {
				FileOutputStream out = new FileOutputStream(writeablepath);
				
				out.write("被日了".getBytes());
				
				Toast.makeText(this, "写入成功", Toast.LENGTH_SHORT).show();
				
			} catch (Exception e) {
				Toast.makeText(this, "写入失败", Toast.LENGTH_SHORT).show();
				e.printStackTrace();
			}
		
			break;
			
		case R.id.btn_read_rw: //写可读可写文件
			try {
				FileInputStream in = new FileInputStream(rwpath);
				byte[] buffer = new byte[in.available()]; // available() 获取一个文件里面有多少个byte
				
				in.read(buffer);
				
				if(null != buffer && buffer.length > 0)
				{
					FileOutputStream out = new FileOutputStream(rwpath);
					out.write("被 日了".getBytes());
					Toast.makeText(this, "读取成功:" + new String(buffer), Toast.LENGTH_SHORT).show();
				}
				
			} catch (Exception e) {
				
				Toast.makeText(this, "读取失败", Toast.LENGTH_SHORT).show();
				e.printStackTrace();
			}
			break;
		case R.id.btn_write_rw: //读可读可写文件
			try {
				FileOutputStream out = new FileOutputStream(rwpath);
				
				out.write("被日了".getBytes());
				
				Toast.makeText(this, "写入成功", Toast.LENGTH_SHORT).show();
				
			} catch (Exception e) {
				Toast.makeText(this, "写入失败", Toast.LENGTH_SHORT).show();
				e.printStackTrace();
			}
		
			break;
			default:
				break;
		}
	}
}

布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.xh.tx.read.MainActivity" >

    <Button 
       android:id="@+id/btn_read_private"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="读取私有文件"
       />
    <Button 
       android:id="@+id/btn_write_private"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="写取私有文件"
	/>
    <Button 
       android:id="@+id/btn_read_readable"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="读取可读文件"
       />
   <Button 
       android:id="@+id/btn_write_readable"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="写可读文件"
    />
   
      <Button 
       android:id="@+id/btn_read_writeable"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="读取可写文件"
       />
   <Button 
       android:id="@+id/btn_write_writeable"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="写取可写文件"
    />
   
      <Button 
       android:id="@+id/btn_read_rw"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="读取可读可写文件"
       />
   <Button 
       android:id="@+id/btn_write_rw"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="写取可读可写文件"
    />
</LinearLayout>



版权声明:本文为博主原创文章,未经博主允许不得转载。

关于linux 下的 读写权限

r代表 4  ;w代表2; x代表1 r可读 ; w 可写; x 可执行  chmod   lcf(文件名) 777   现在该说说修改linux文件读写权限 在终...
  • vevenlcf
  • vevenlcf
  • 2013年07月31日 18:02
  • 1559

对iis写权限的利用

作者: SuperHei 大家可能看过《远程分析IIS设置》,里面对iis的各种设置进行了分析,我这里就对iis的写权限来分析下,以下引用《远程分析IIS设置》文章对iis写权限分析内容:写权限  测...
  • freexploit
  • freexploit
  • 2004年10月25日 13:22
  • 986

Linux内核---57.sysfs的读写操作

Linux内核---57.sysfs的读写操作
  • wangcong02345
  • wangcong02345
  • 2016年07月09日 10:43
  • 369

关于对表的读写权限的控制示例演示

前言:       说数据库权限控制,首先简单了解下数据库中存在的两种角色:服务器角色和数据库角色。       服务器角色: 内置服务器角色 说明 sy...
  • u011015550
  • u011015550
  • 2014年12月31日 14:31
  • 971

android写文件到sd卡要有权限声明

uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE">uses-permission>   无论是用m...
  • uh600gu
  • uh600gu
  • 2014年11月15日 16:47
  • 230

权限导致对hdfs文件读写错误

原文地址:http://www.verydemo.com/demo_c372_i12845.html error:org.apache.oozie.action.ActionExecutorEx...
  • u010571535
  • u010571535
  • 2014年10月11日 17:54
  • 1008

JQuery 权限选择例子

http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> http://www.w3.org/1999/xhtml">      ...
  • limlimlim
  • limlimlim
  • 2013年07月02日 17:02
  • 1705

API level22下SD卡写入读取权限

文件读取权限写入manifest仍被拒
  • Tastydeath999
  • Tastydeath999
  • 2017年01月07日 13:54
  • 504

IIS7.0下文件写入无权限的解决办法

原文:IIS7.0下文件写入无权限的解决办法 作者:风动破 1. 在IIS Web站点上右键 --> 编辑权限 2. 在弹出的窗体上选择【安全】选项卡,如图: [转载]IIS7.0下文...
  • swordcry
  • swordcry
  • 2016年12月21日 15:48
  • 1010

NFS文件无法写入的权限问题

http://www.blogjava.net/gf7/archive/2012/12/12/392843.html 环境: OS:Red Hat Linux As 5 ...
  • xiyang_1990
  • xiyang_1990
  • 2017年10月19日 14:02
  • 860
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:读 写 权限
举报原因:
原因补充:

(最多只允许输入30个字)