在Android中阅读文本文件,可以使用以下方法:
InputStream
和BufferedReader
:import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
public String readTextFile(Context context, int resourceId) {
StringBuilder stringBuilder = new StringBuilder();
try {
InputStream inputStream = context.getResources().openRawResource(resourceId);
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line);
stringBuilder.append("\n");
}
bufferedReader.close();
inputStreamReader.close();
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
return stringBuilder.toString();
}
AssetManager
:import android.content.Context;
import android.content.res.AssetManager;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public String readTextFile(Context context, String fileName) {
StringBuilder stringBuilder = new StringBuilder();
try {
AssetManager assetManager = context.getAssets();
InputStream inputStream = assetManager.open(fileName);
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line);
stringBuilder.append("\n");
}
bufferedReader.close();
inputStreamReader.close();
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
return stringBuilder.toString();
}
这两种方法都可以在Android中阅读文本文件。第一种方法适用于资源文件,第二种方法适用于assets
文件夹中的文件。
推荐的腾讯云相关产品:腾讯云移动应用安全(MAS),腾讯云移动直播(TML),腾讯云移动推送(TMP),腾讯云移动分析(TMA)。
产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云