Android TXT文件读写
2016-07-14 13:45
429 查看
来自:http://blog.csdn.net/wirelessqa/article/details/7807762
package com.wirelessqa.helper;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import org.apache.http.util.EncodingUtils;
import android.app.Activity;
public class FileAccess extends Activity {
/**
* 一、私有文件夹下的文件存取(/data/data/包名/files)
*
* @param fileName
* @param message
*/
public void writeFileData(String fileName, String message) {
try {
FileOutputStream fout = openFileOutput(fileName, MODE_PRIVATE);
byte[] bytes = message.getBytes();
fout.write(bytes);
fout.close();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* //读文件在./data/data/包名/files/下面
*
* @param fileName
* @return
*/
public String readFileData(String fileName) {
String res = "";
try {
FileInputStream fin = openFileInput(fileName);
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");
fin.close();
} catch (Exception e) {
e.printStackTrace();
}
return res;
}
/**
* 写, 读sdcard目录上的文件,要用FileOutputStream, 不能用openFileOutput
* 不同点:openFileOutput是在raw里编译过的,FileOutputStream是任何文件都可以
* @param fileName
* @param message
*/
// 写在/mnt/sdcard/目录下面的文件
public void writeFileSdcard(String fileName, String message) {
try {
// FileOutputStream fout = openFileOutput(fileName, MODE_PRIVATE);
FileOutputStream fout = new FileOutputStream(fileName);
byte[] bytes = message.getBytes();
fout.write(bytes);
fout.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
// 读在/mnt/sdcard/目录下面的文件
public String readFileSdcard(String fileName) {
String res = "";
try {
FileInputStream fin = new FileInputStream(fileName);
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");
fin.close();
}
catch (Exception e) {
e.printStackTrace();
}
return res;
}
/**
* 二、从resource中的raw文件夹中获取文件并读取数据(资源文件只能读不能写)
*
* @param fileInRaw
* @return
*/
public String readFromRaw(int fileInRaw) {
String res = "";
try {
InputStream in = getResources().openRawResource(fileInRaw);
int length = in.available();
byte[] buffer = new byte[length];
in.read(buffer);
res = EncodingUtils.getString(buffer, "GBK");
// res = new String(buffer,"GBK");
in.close();
} catch (Exception e) {
e.printStackTrace();
}
return res;
}
/**
* 三、从asset中获取文件并读取数据(资源文件只能读不能写)
*
* @param fileName
* @return
*/
public String readFromAsset(String fileName) {
String res = "";
try {
InputStream in = getResources().getAssets().open(fileName);
int length = in.available();
byte[] buffer = new byte[length];
in.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");
} catch (Exception e) {
e.printStackTrace();
}
return res;
}
}
package com.wirelessqa.helper;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import org.apache.http.util.EncodingUtils;
import android.app.Activity;
public class FileAccess extends Activity {
/**
* 一、私有文件夹下的文件存取(/data/data/包名/files)
*
* @param fileName
* @param message
*/
public void writeFileData(String fileName, String message) {
try {
FileOutputStream fout = openFileOutput(fileName, MODE_PRIVATE);
byte[] bytes = message.getBytes();
fout.write(bytes);
fout.close();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* //读文件在./data/data/包名/files/下面
*
* @param fileName
* @return
*/
public String readFileData(String fileName) {
String res = "";
try {
FileInputStream fin = openFileInput(fileName);
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");
fin.close();
} catch (Exception e) {
e.printStackTrace();
}
return res;
}
/**
* 写, 读sdcard目录上的文件,要用FileOutputStream, 不能用openFileOutput
* 不同点:openFileOutput是在raw里编译过的,FileOutputStream是任何文件都可以
* @param fileName
* @param message
*/
// 写在/mnt/sdcard/目录下面的文件
public void writeFileSdcard(String fileName, String message) {
try {
// FileOutputStream fout = openFileOutput(fileName, MODE_PRIVATE);
FileOutputStream fout = new FileOutputStream(fileName);
byte[] bytes = message.getBytes();
fout.write(bytes);
fout.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
// 读在/mnt/sdcard/目录下面的文件
public String readFileSdcard(String fileName) {
String res = "";
try {
FileInputStream fin = new FileInputStream(fileName);
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");
fin.close();
}
catch (Exception e) {
e.printStackTrace();
}
return res;
}
/**
* 二、从resource中的raw文件夹中获取文件并读取数据(资源文件只能读不能写)
*
* @param fileInRaw
* @return
*/
public String readFromRaw(int fileInRaw) {
String res = "";
try {
InputStream in = getResources().openRawResource(fileInRaw);
int length = in.available();
byte[] buffer = new byte[length];
in.read(buffer);
res = EncodingUtils.getString(buffer, "GBK");
// res = new String(buffer,"GBK");
in.close();
} catch (Exception e) {
e.printStackTrace();
}
return res;
}
/**
* 三、从asset中获取文件并读取数据(资源文件只能读不能写)
*
* @param fileName
* @return
*/
public String readFromAsset(String fileName) {
String res = "";
try {
InputStream in = getResources().getAssets().open(fileName);
int length = in.available();
byte[] buffer = new byte[length];
in.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");
} catch (Exception e) {
e.printStackTrace();
}
return res;
}
}
相关文章推荐
- Android 获取控件相对于屏幕位置
- 关于Android/java的复杂对象的深拷贝和浅拷贝
- Android基础--------广播
- Android学习规划指南
- Android中拍照和从相册选择图片,并剪裁(二)
- android对话框
- Android WebWiew 使用详解
- android生成keystore 和dedug.keystore
- Android属性动画完全解析(上),初识属性动画的基本用法
- Android 中View类DrawingCache的使用
- Android基础------图形和图像处理
- Android Studio编译报错“java.lang.OutOfMemoryError: GC overhead limit exceeded”
- Android系统信息获取 之三:CPU信息获取
- android-destroyDrawingCache
- Java-Android【2】-弹出对话框
- ImageLoader源码分析
- Android实现推送方式解决方案
- gridview设置第一行距顶部的距离
- android提醒闹铃
- Android Studio 使用技巧