androi文件读写操作
16lz
2021-01-25
废话少说,直接上代码,看不懂的地方自己去网上查,以下代码都在我本地运行正常:
新建一个FileRW的android的项目:
新建一个com.sharandroi.file包
新建一个FileService.java的具体操作类:
package com.sharandroi.file;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import android.content.Context;
public class FileService {
private Context context;
public FileService(Context context) {
this.context = context;
}
public void save(String content) throws Exception {
FileOutputStream outStream = context.openFileOutput("sharpandroid.txt",
Context.MODE_WORLD_WRITEABLE);
outStream.write(content.getBytes());// 写数据
outStream.close();// 关闭输出流
}
public String read() throws Throwable{
FileInputStream instream = context.openFileInput("sharpandroid.txt");
byte[] data = readFile(instream);
return new String(data);
}
public byte[] readFile(InputStream inStream) throws Throwable{
int len = 0;
byte[] buffer = new byte[1024];
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
while((len = inStream.read(buffer))!=-1){
outStream.write(buffer,0,len);
}
outStream.close();
return outStream.toByteArray();
}
}
新建一个单元测试类:FileServiceTest.java
package com.sharandroi.file;
import java.io.InputStream;
import java.io.OutputStream;
import android.content.Context;
import android.test.AndroidTestCase;
import android.util.Log;
public class FileServiceTest extends AndroidTestCase {
public void testSave() throws Throwable{
FileService fileService = new FileService(getContext());
fileService.save("qqqqqqqqqqqqqqqqqqqqqqqqqq");
Log.i("aaa", fileService.read());
}
}
AndroidManifest.xml配置添加权限:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.sharandroi.file" android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<uses-library android:name="android.test.runner" />
<activity android:name=".MainActivity" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="8" />
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.sharandroi.file" android:label="Tests for My App" />
</manifest>
上面的代码把需要用的包都导进来在我本地能跑起来
File Exploreer的下面看到data/data/com.sharandroi.file/下面有个sharpandroid.txt文件倒出来就可以看到内容了
新建一个FileRW的android的项目:
新建一个com.sharandroi.file包
新建一个FileService.java的具体操作类:
package com.sharandroi.file;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import android.content.Context;
public class FileService {
private Context context;
public FileService(Context context) {
this.context = context;
}
public void save(String content) throws Exception {
FileOutputStream outStream = context.openFileOutput("sharpandroid.txt",
Context.MODE_WORLD_WRITEABLE);
outStream.write(content.getBytes());// 写数据
outStream.close();// 关闭输出流
}
public String read() throws Throwable{
FileInputStream instream = context.openFileInput("sharpandroid.txt");
byte[] data = readFile(instream);
return new String(data);
}
public byte[] readFile(InputStream inStream) throws Throwable{
int len = 0;
byte[] buffer = new byte[1024];
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
while((len = inStream.read(buffer))!=-1){
outStream.write(buffer,0,len);
}
outStream.close();
return outStream.toByteArray();
}
}
新建一个单元测试类:FileServiceTest.java
package com.sharandroi.file;
import java.io.InputStream;
import java.io.OutputStream;
import android.content.Context;
import android.test.AndroidTestCase;
import android.util.Log;
public class FileServiceTest extends AndroidTestCase {
public void testSave() throws Throwable{
FileService fileService = new FileService(getContext());
fileService.save("qqqqqqqqqqqqqqqqqqqqqqqqqq");
Log.i("aaa", fileService.read());
}
}
AndroidManifest.xml配置添加权限:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.sharandroi.file" android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<uses-library android:name="android.test.runner" />
<activity android:name=".MainActivity" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="8" />
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.sharandroi.file" android:label="Tests for My App" />
</manifest>
上面的代码把需要用的包都导进来在我本地能跑起来
File Exploreer的下面看到data/data/com.sharandroi.file/下面有个sharpandroid.txt文件倒出来就可以看到内容了
更多相关文章
- 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
- Android中ImageButton自定义按钮的按下效果的代码实现方法,附网上
- android Tabhost中,控制activity的生命周期
- android webview夜间模式javascript代码
- listview绑定xml网络数据(android极简原创系列)
- Android(安卓)一个简单手机响铃功能实现
- android 关于localhost和访问本机服务的方法
- Android集成百度地图-----显示地图、定位、长按显示地址信息
- Android实现图片叠加效果的两种方法