成都网站建设设计

将想法与焦点和您一起共享

android写文件,android写文件权限

android 将数据写入文件中并导出。

@Override

创新互联自2013年起,先为潢川等服务建站,潢川等地企业,进行企业商务咨询服务。为潢川企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

public void onClick(View view) {

String state = Environment.getExternalStorageState();//获取外部设备状态

//检测外部设备是否可用

if(!state.equals(Environment.MEDIA_MOUNTED)) {

Toast.makeText(this, "外部设备不可用", Toast.LENGTH_SHORT).show();

return;

}

//创建文件

File sdCard = Environment.getExternalStorageDirectory();//获取外部设备的目录

File file = new File(sdCard,"文件名.txt");//文件位置

try {

FileOutputStream outputStream = new FileOutputStream(file);//打开文件输出流

BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(outputStream));//写入到缓存流

writer.write("这里是要写入到文件的数据");//从从缓存流写入

writer.close();//关闭流

Toast.makeText(this, "输出成功", Toast.LENGTH_SHORT).show();

}

catch(Exception exception) {

Toast.makeText(this, "输出失败", Toast.LENGTH_SHORT).show();

}

}

写入到文件管理时需要权限

uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/

android怎么写aidl文件

建立AIDL服务要比建立普通的服务复杂一些,具体步骤如下:

(1)在Eclipse Android工程的Java包目录中建立一个扩展名为aidl的文件。该文件的语法类似于Java代码,但会稍有不同。详细介绍见实例52的内容。

(2)如果aidl文件的内容是正确的,ADT会自动生成一个Java接口文件(*.java)。

(3)建立一个服务类(Service的子类)。

(4)实现由aidl文件生成的Java接口。

(5)在AndroidManifest.xml文件中配置AIDL服务,尤其要注意的是,action标签中android:name的属性值就是客户端要引用该服务的ID,也就是Intent类的参数值。

建立AIDL服务

本例中将建立一个简单的AIDL服务。这个AIDL服务只有一个getValue方法,该方法返回一个String类型的值。在安装完服务后,会在客户端调用这个getValue方法,并将返回值在TextView组件中输出。建立这个AIDL服务的步骤如下:

(1)建立一个aidl文件。在Java包目录中建立一个IMyService.aidl文件。IMyService.aidl文件的位置如图

IMyService.aidl文件的内容如下:

Java代码:

package eoe.demo;

interface IMyService {

String getValue();

}

IMyService.aidl文件的内容与Java代码非常相似,但要注意,不能加修饰符(例如,public、private)、AIDL服务不支持的数据类型(例如,InputStream、OutputStream)等内容。

(2)如果IMyService.aidl文件中的内容输入正确,ADT会自动生成一个IMyService.java文件。读者一般并不需要关心这个文件的具体内容,也不需要维护这个文件。关于该文件的具体内容,读者可以查看本节提供的源代码。

(3)编写一个MyService类。MyService是Service的子类,在MyService类中定义了一个内嵌类(MyServiceImpl),该类是IMyService.Stub的子类。MyService类的代码如下:

Java代码:

package eoe.demo;

import android.app.Service;

import android.content.Intent;

import android.os.IBinder;

import android.os.RemoteException;

public class MyService extends Service {

public class MyServiceImpl extends IMyService.Stub {

@Override

public String getValue() throws RemoteException {

return "Android/OPhone开发讲义";

}

}

@Override

public IBinder onBind(Intent intent) {

return new MyServiceImpl();

}

}

在编写上面代码时要注意如下两点:

IMyService.Stub是根据IMyService.aidl文件自动生成的,一般并不需要管这个类的内容,只需要编写一个继承于IMyService.Stub类的子类(MyServiceImpl类)即可。

onBind方法必须返回MyServiceImpl类的对象实例,否则客户端无法获得服务对象。

(4)在AndroidManifest.xml文件中配置MyService类,代码如下:

Java代码:

service android:name=".MyService"

intent-filter

action android:name="net.blogjava.mobile.aidl.IMyService" /

/intent-filter

/service

下面来编写客户端的调用代码。首先新建一个Eclipse Android工程(ch08_aidlclient),并将自动生成的IMyService.java文件连同包目录一起复制到ch08_aidlclient工程的src目录中,如图所示。

调用AIDL服务首先要绑定服务,然后才能获得服务对象,代码如下:

Java代码:

package net.blogjava.mobile;

import net.blogjava.mobile.aidl.IMyService;

import android.app.Activity;

import android.content.ComponentName;

import android.content.Context;

import android.content.Intent;

import android.content.ServiceConnection;

import android.os.Bundle; import android.os.IBinder;

import android.view.View; import android.view.View.OnClickListener;

import android.widget.Button; import android.widget.TextView;

public class Main extends Activity implements OnClickListener {

private IMyService myService = null;

private Button btnInvokeAIDLService;

private Button btnBindAIDLService;

private TextView textView;

private ServiceConnection serviceConnection = new ServiceConnection() {

@Override

public void onServiceConnected(ComponentName name, IBinder service) {

// 获得服务对象

myService = IMyService.Stub.asInterface(service);

btnInvokeAIDLService.setEnabled(true);

}

@Override

public void onServiceDisconnected(ComponentName name) {

}

};

@Override

public void onClick(View view) {

switch (view.getId()) {

case R.id.btnBindAIDLService:

// 绑定AIDL服务

bindService(new Intent("net.blogjava.mobile.aidl.IMyService"), serviceConnection, Context.BIND_AUTO_CREATE);

break;

case R.id.btnInvokeAIDLService:

try {

textView.setText(myService.getValue());

// 调用服务端的getValue方法

} catch (Exception e) {

}

break;

}

}

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

btnInvokeAIDLService = (Button) findViewById(R.id.btnInvokeAIDLService);

btnBindAIDLService = (Button) findViewById(R.id.btnBindAIDLService); btnInvokeAIDLService.setEnabled(false);

textView = (TextView) findViewById(R.id.textview);

btnInvokeAIDLService.setOnClickListener(this);

btnBindAIDLService.setOnClickListener(this);

}。

android 读写文件需要哪些权限

!--往sdcard中写入数据的权限 --uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/uses-permission!--在sdcard中创建/删除文件的权限 --uses-permission android:name="android.permission.MOUNT_U

android中的apk必须签名

这种签名不是基于权威证书的,不会决定某个应用允不允许安装,而是一种自签名证书。

重要的是,android系统有的权限是基于签名的。比如:system等级的权限有专门对应的签名,签名不对,权限也就获取不到。默认生成的APK文件是debug签名的。

获取system权限时用到的签名,见:如何使Android应用程序获取系统权限。基于UserID的进程级别的安全机。这种签名不是基于权威证书的,不会决定某个应用允不允许安装,而是一种自签名证书。重要的是,android系统有的权限是基于签名的。

Android可以写文件的目录包括哪些

Android手机下可以写文件的目录除了

Environment.getExternalStorageDirectory()获取的路径也就是/sdcard

/data/data/packageName/安装包路径下

像/storage/sdcard0, /mnt/sdcard 都是软链接到 /sdcard

一般非root手机来说都有内置sdcard 这个肯定可以写的,如果有外置sdcard这个也是可以的,再就是你应用安装目录下的这都是可以的。root后的我就不多说了。还有个/data/local/tmp

android10删除文件后写文件

android10删除文件后写文件如下

1.将数据存储到文件中(文件默认存储到data/data/包名/files目录下)htmlpublic void save(String inputText) {//inputText为传入的要保存的数据FileOutputStream out = null;BufferedWriter writer = null;try {= openFileOutput("data", Context.MODE_APPEND);//"data"为文件名,第二个参数为文件操做模式:文件已经存在,就往文件里面追加类容,不重新建立文件。

writer = new BufferedWriter(new OutputStreamWriter(out));writer.write(inputText);} catch (IOException e) {e.printStackTrace();} finally {try {if (writer != null) {writer.close();

2.从文件中读取数据android//读取数据= load();if (!TextUtils.isEmpty(inputText1)) {//非空判断,传入为null和空字符串时返回true//将数据展现到listview控件 );//android.R.layout.simple_list_item_1android内置子布adapter.add(inputText1);ListViewBattery5.setAdapter(adapter)。

Android 中的文件读写操作

IO流(操作文件内容): 字节流

参考:

AssetManager

assets 文件夹用于存储应用需要的文件,在安装后可直接从其中读取使用或者写入本地存储中

Android Studio 默认不建立该文件夹,可以手动新建 : app - src - main - assets

或者,右键 main - New - Folder - Assets Folder

AssetManager 对象可以直接访问该文件夹:

获取方法:

使用函数 open 可以打开 assets 文件夹中对象,返回一个 InputStream 对象:

open

获取方法:


分享文章:android写文件,android写文件权限
本文路径:http://chengdu.cdxwcx.cn/article/dsiippg.html