Android txt文件里面的章节名显示

显示里面的章节名 怎么显示 然后点击显示出来的章节名 进入里面显示内容 最好有详细代码 类似IOS的爸比讲故事 只不过弄成Android的 详细可以运行 我的是4.2版本的SDK 有的可以发QQ 邮件515102655@qq.com
里面的 txt文件可不可以放在一起安装 打包在一起可以? 也可以说下思路 截取字符串显示在listview里面 关键的是截取字符串的话得截取这一个章节的字符串 要是在listview里面显示的话不就是这一个章节里面的了吗 怎么才能显示章节名? 怎么弄来个思路 详细点
最新回答
巴拉拉能量作业消失

2024-05-25 04:28:53

    试着写了下,实现了。思路就是用IO流,BufferedReader类的readLine()方法来逐行读取txt文件因为章节标题一般都是独占一行的,然后用正则表达式来判断,代码如下(顺便给每章加了跳转标示,用offset记录下字节数,之后用dr.skip(offset)方法就能直接跳转到该行):


        

截图,章节前面的数字是offset,用来当跳转标识


  new Handler().post(new Runnable() 


  @Override

  public void run() {

  // TODO Auto-generated method stub

  File file = new File(Environment.getExternalStorageDirectory()

  .getPath() + "/全职高手.txt");

  if (!file.exists()) {

  return;

  }


  FileInputStream fis;

  final String RE = "([第].{1,5}[章])(.+)";


  try {

  fis = new FileInputStream(file);

  BufferedReader dr = new BufferedReader(

  new InputStreamReader(fis, "GBK"));

  String line = null;

  long offset = 0;

  while ((line = dr.readLine()) != null) {

  if (line.trim().matches(RE)) {

  Log.d(offset + "", line.trim());

  }

  ;

  offset = offset + line.length() + 2;

  }

  dr.close();

  } catch (FileNotFoundException e1) {

  // TODO Auto-generated catch block

  e1.printStackTrace();

  } catch (IOException e) {

  // TODO Auto-generated catch block

  e.printStackTrace();

  }

  }

  });