Android 读取txt,按行读取的实例讲解

时间:2022-01-15 15:52:10

一个TXT 文件 对其进行读取,并且每行都单个存储读取

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
public class MainActivity extends AppCompatActivity {
 private TextView textView,textView2,textView3;
 private Button click;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  textView = (TextView) findViewById(R.id.textView);
  textView2 = (TextView) findViewById(R.id.textView2);
  textView3 = (TextView) findViewById(R.id.textView3);
  String s1 = Txt().get(0);//从Map get (key = 0)的value
  String s2 = Txt().get(1);
  String s3 = Txt().get(2);
  textView.setText(s1);
  textView2.setText(s2);
  textView3.setText(s3);
 }
 public Map<Integer, String> Txt() {
  //将读出来的一行行数据使用Map存储
  String filePath = "/sdcard/sdl_log.txt";//手机上地址
  Map<Integer, String> map = new HashMap<Integer, String>();
  try {
   File file = new File(filePath);
   int count = 0;//初始化 key值
   if (file.isFile() && file.exists()) {  //文件存在的前提
    InputStreamReader isr = new InputStreamReader(new FileInputStream(file));
    BufferedReader br = new BufferedReader(isr);
    String lineTxt = null;
    while ((lineTxt = br.readLine()) != null) {  //
     if (!"".equals(lineTxt)) {
      String reds = lineTxt.split("\\+")[0];  //java 正则表达式
      map.put(count, reds);//依次放到map 0,value0;1,value2
      count++;
     }
    }
    isr.close();
    br.close();
   }else {
    Toast.makeText(getApplicationContext(),"can not find file",Toast.LENGTH_SHORT).show();//找不到文件情况下
   }
  } catch (Exception e) {
   e.printStackTrace();
  }
  return map;
 }
}

Android 读取txt,按行读取的实例讲解

Android 读取txt,按行读取的实例讲解

以上这篇Android 读取txt,按行读取的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/Damionew/article/details/71104589