Android读取本地文件的方法有以下几种:
使用FileInputStream或FileReader类读取文件内容:File file = new File("/sdcard/myfile.txt");FileInputStream fis = new FileInputStream(file);// 或者// FileReader reader = new FileReader(file);// ...// 读取文件内容byte[] buffer = new byte[1024];int length = fis.read(buffer);// 或者// int length = reader.read(buffer);// 关闭流fis.close();// 或者// reader.close();
使用BufferedReader类按行读取文本文件内容:File file = new File("/sdcard/myfile.txt");BufferedReader reader = new BufferedReader(new FileReader(file));String line;while ((line = reader.readLine()) != null) {// 处理每行内容}// 关闭流reader.close();
使用Scanner类读取文件内容:File file = new File("/sdcard/myfile.txt");Scanner scanner = new Scanner(file);while (scanner.hasNextLine()) {String line = scanner.nextLine();// 处理每行内容}// 关闭流scanner.close();
使用AssetManager类读取assets文件夹下的文件:AssetManager assetManager = getAssets();InputStream inputStream = assetManager.open("myfile.txt");// 读取文件内容byte[] buffer = new byte[1024];int length = inputStream.read(buffer);// 关闭流inputStream.close();
需要注意的是,读取文件时需要获取相应的读取文件的权限,例如读取外部存储器文件需要添加<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
权限到AndroidManifest.xml文件中。同时,还需要处理文件读取过程中可能抛出的异常,例如FileNotFoundException等。