`

读写应用的data/data的files目录的文件

 
阅读更多
@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		String valueString = "dfjkdjfkdjfjieurieuriewuorewioreir";
		try {
			writeDateFile("name", valueString.getBytes());
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		try {
			String value = readDateFile("name");
			Log.d("test", "___value__" + value);
			Log.d("test", "___value.length()__" + value.length());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	// 将文件写入应用的data/data的files目录下
	public void writeDateFile(String fileName, byte[] buffer) throws Exception {
		byte[] buf = fileName.getBytes("iso8859-1");
		fileName = new String(buf, "utf-8");
		// Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容,如果想把新写入的内容追加到原文件中。可以使用Context.MODE_APPEND
		// Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件。
		// Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件。
		// MODE_WORLD_READABLE:表示当前文件可以被其他应用读取;MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入。
		// 如果希望文件被其他应用读和写,可以传入:
		// openFileOutput("output.txt", Context.MODE_WORLD_READABLE +
		// Context.MODE_WORLD_WRITEABLE);
		FileOutputStream fos = FilesDemoActivity.this.openFileOutput(fileName,
				Context.MODE_PRIVATE);// 添加在文件后面
		fos.write(buffer);
		fos.close();
	}

	// 读取应用的data/data的files目录下文件数据
	public String readDateFile(String fileName) throws Exception {
		FileInputStream fis = FilesDemoActivity.this.openFileInput(fileName);
		String result = streamRead(fis);// 返回一个字符串
		return result;
	}

	private String streamRead(InputStream is) throws IOException {
		int buffersize = is.available();// 取得输入流的字节长度
		byte buffer[] = new byte[buffersize ];
		is.read(buffer);// 将数据读入数组
		is.close();// 读取完毕后要关闭流。
		String result = EncodingUtils.getString(buffer, "UTF-8");// 设置取得的数据编码,防止乱码
		return result;
	}

 

分享到:
评论

相关推荐

    Android存储路径

    - **/data/data/包名**: 这是Android应用的私有目录,用于存储应用的数据库、SharedPreferences、文件等。只有应用本身可以访问这里的数据,其他应用无法直接访问。 - **Android/data/包名**: 在Android 6.0(API...

    Android读写文件

    数据通常保存在`/data/data/your.package.name/files/`目录下。 - **外部存储**:对所有应用开放,通常用于存储用户可访问的文件。数据保存在`/storage/emulated/0/`(或SD卡路径)。 3. **读取文件**: 可以使用...

    android读写文件例程

    在Android中,每个应用都有自己的私有存储空间,通常位于"data/data/<package_name>/files/"路径下,其中是应用的包名。在这个私有目录中,应用可以自由地创建、读取、修改和删除文件,而其他应用无法直接访问这些...

    MySQL服务无法启动(1067)问题解决

    例如,如果你的MySQL安装在`C:\Program Files\MySQL\MySQL Server 8.0`目录下,那么`datadir`应该设置为`C:\ProgramData\MySQL\MySQL Server 8.0\Data`(默认情况下)。 - 如果发现`datadir`设置为类似`%安装目录%/...

    文件存储及读写文件

    程序简单示范了读写应用程序数据文件夹内的文件,文件地址是/data/data/org.crazyit.io/files/;使用openFileOutput和openFileInput两个方法,使用android studio

    Android不需要文件存储权限将文件保存至手机

    2. **私有应用目录**:每个Android应用都有自己的私有目录,位于`/data/data/<package_name>/files`下,这里的`<package_name>`是应用的包名。在这个目录下,应用可以自由地创建、读取和删除文件,无需请求额外的...

    android demo,sd卡文件存储和data下文件存储。

    - `Context.getFilesDir()`:返回应用的私有文件目录路径。 - `Context.openFileOutput(String name, int mode)`:创建或打开一个文件,`mode`参数定义文件访问模式,如`MODE_PRIVATE`、`MODE_APPEND`等。 - `...

    android 开发 文件读写应用案例分析

    一、基本概念 在Android应用中保存文件,保存的位置有两处 ①手机自带的存储空间,较小(如200M),适合保存一些小文件,Android中保存位置在data/data/应用包名/files目录 ②外存储设备如SD卡,较大,适合保存大文件...

    PHP实现文件上传,及文件读写

    // 文件上传目录 move_uploaded_file($tempFile, $uploadDir . $fileName); echo "文件上传成功!"; } else { echo "文件上传失败:" . $_FILES['myfile']['error']; } ?> ``` 接下来,我们讨论PHP文件读写...

    android data storage.docx

    Android为每个应用提供了私有文件存储空间,位于`/data/data/Package Name/files`目录。如果需要在SD卡上存储文件,需要额外的权限检查和路径处理。文件存储不适合跨应用共享数据。 示例代码: ```java ...

    Android 文件管理 源码

    每个应用程序都有自己的私有目录,位于/data/data/<package_name>/files/,以保护应用数据的安全性。 二、Android的存储路径 1. internal storage(内部存储):这是应用程序默认的存储区域,只有应用程序本身可以...

    应用源码SdCard读写文件实例.zip

    考虑到隐私和安全,不建议直接将文件保存在根目录下,应选择合适的子目录,如“Android/data/your_package_name/files/”。这样,文件仅对你的应用可见,避免了其他应用的误操作。 以上知识点涵盖了Android中读写...

    android---在内部存储中读写文件

    // 获取/data/data/包名/files/目录 ``` 这里返回的`File`对象表示的是应用的私有数据目录,可以在此基础上创建子目录和文件。 三、写入文件 1. 使用`openFileOutput()`方法: ```java String content = "Hello, ...

    Android开发进阶:如何读写Android文件.pdf

    Android应用程序通常将文件存储在特定的目录下,即/data/data/<package name>/files/,这里的是应用的包名。这个路径是私有的,只能由创建文件的应用程序访问,以保护用户数据的安全性。值得注意的是,与Windows系统...

    android下的简易的文件目录察看

    这个简易的文件目录察看应用,虽然可能并非尽善尽美,但它的存在使得用户能够探索和理解设备上的文件结构,这对于调试、数据管理或者只是了解手机内部工作原理都有所帮助。以下是对这个主题的详细阐述: 1. **...

    android往手机内存和sdcard卡上存储数据

    在Android应用开发中,存储数据是一项基础且重要的任务。这篇内容将详细讲解如何在手机内存以及SDCard(外部存储)上进行数据存储,并提供了一段经过...在实际应用中,务必遵循最佳实践,确保数据的正确读写和安全。

    android中sdcard的读写.doc

    - `getFilesDir()`:此方法用于获取应用程序的数据文件目录,路径通常为`/data/data/包名/files`。 - 示例代码: ```java File filesDir = getFilesDir(); ``` #### 三、SDCard的准备与使用 1. **模拟器中...

    Android文件系统全面讲解

    私有存储则类似于内部存储,但位于外部存储,如/data/user/0/包名/files/,不过应用卸载后,这些文件不会自动删除。 4. **文件操作** 在Android中,可以使用java.io和java.nio包中的类进行文件操作,如File类用于...

    mysql通过data文件夹恢复数据和存储过程的方法

    - MySQL的`data`文件夹位于MySQL的安装目录下,路径可能为`C:\Program Files\MySQL\MySQL Server xx\data`(Windows)或`/usr/local/mysql/data`(Linux)。 #### 二、MySQL数据恢复基础知识 1. **逻辑备份与物理...

    linux上安装mysql.docx

    - 使用`chown -R mysql:mysql /data/mysql-data/`将该目录的所有权赋予mysql用户和组,确保MySQL服务能够读写这些文件。 #### 五、配置MySQL 1. **备份原有配置文件**: - 执行`mv /etc/my.cnf /etc/my.cnf.bak`...

Global site tag (gtag.js) - Google Analytics