这里首先实现指定的txt文件的解析以及处理:
首先是解析方法:读取txt后根据关键字分章节分标题处理
package com.example.read_txt_highlight;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import android.annotation.SuppressLint;
@SuppressLint("NewApi")
public class TxtReadMethod {
public static final int UNIT=0;
public static final int LESSON=1;
public static final int CONTENT=2;
/**
* 通过一个InputStream获取内容
*
* @param inputStream
* @return
*/
public static ArrayList<UnitData> getString(InputStream inputStream) {
ArrayList<UnitData> unitDataList=new ArrayList<UnitData>();
InputStreamReader inputStreamReader = null;
try {
inputStreamReader = new InputStreamReader(inputStream, "utf-8");
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}
BufferedReader reader = new BufferedReader(inputStreamReader);
StringBuffer sb = new StringBuffer("");
StringBuffer titleSb = new StringBuffer("");
String line;
String regularUnit = "Unit\\s*\\d";
String regularLesson = "Lesson\\s*\\d";
int unitId = 0;
int lessonId = 0;
boolean upLesson = false;
boolean firstContent = false;
int matchId;
String matchContent;
UnitData unitData=new UnitData();
ArrayList<Article> articleList=new ArrayList<Article>();
Article article=new Article();
try {
while ((l