// Path: LightPlayer/src/com/sequarius/lightplayer/object/LrcParse.java
// public class LrcParse {
// 	private TreeMap<Integer, String> treeMap;
// 
// 	public LrcParse(File file) throws IOException, FileNotFoundException {
// 		super();
// 		InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "UTF-8");
//         BufferedReader bufferedReader = new BufferedReader(isr);
//         List<String> lines=new ArrayList<String>();
//         String line;
//         while ((line=bufferedReader.readLine())!=null) {
//             lines.add(line);
//         }
//         treeMap=new TreeMap<>();
//         for (Iterator<String> iterator = lines.iterator(); iterator.hasNext();) {
//             String string = (String) iterator.next();
//             parserLine(string);
//         }
//         bufferedReader.close();
// 	}
// 	/**
// 	 * ÓÃÓÚ·µ»Ø½âÎöºóµÄ¸è´Ê
// 	 * @return °´ÕÕÊ±¼äË³Ðò½âÎöºóMap¼¯ºÏ
// 	 */
// 	public TreeMap<Integer, String> getLrc(){
// 		return treeMap;
// 	}
// 	/**
// 	 * ½«StringÐÍµÄ×Ö·û´®½âÎö³ÉÊ±¼ä
// 	 * @param timeStr Ê±¼äµÄ×Ö·û´® ¸ñÊ½Îª[xx:xx.xx]
// 	 * @return ×ª»»ºóµÄºÁÃëintÊ±¼äÖµ
// 	 */
// 	private int strToInt(String timeStr){  
// 		//È¥³ý[]
//     	String reg="[\\[|\\]]";
//     	//½âÎö·ÖÖÖÎ»ÖÃ×Ö·û´®
// 		timeStr=timeStr.replaceAll(reg, "");
//         String[] strPre = timeStr.split(":");
//         int min = Integer.parseInt(strPre[0]);  
//         //½âÎöÃëºÍºÁÃëÎ»ÖÃ×Ö·û´®
//         int sec=0;  
//         int mill=0;  
//         if(strPre[1].contains(".")){  
//             String[] strNext=strPre[1].split("\\.");  
// //            System.out.println(s[1]);
//             sec =Integer.parseInt(strNext[0]);  
//             mill=Integer.parseInt(strNext[1]);  
//         }else{  
//             sec=Integer.parseInt(strPre[1]);  
//         }  
//         return min*60*1000+sec*1000+mill*10;  
//     }  
// 	/**
// 	 * ½âÎöÃ¿Ò»ÐÐµÄ¸è´Ê²¢´æÈëMap
// 	 */
//     private void parserLine(String line){
// 		String reg ="\\[(\\d{1,2}:\\d{1,2}\\.\\d{1,2})\\]|\\[(\\d{1,2}:\\d{1,2})\\]"; 
//         Pattern pattern = Pattern.compile(reg);  
//         Matcher matcher=pattern.matcher(line);
//         List<Integer> times=new ArrayList<Integer>();
//         while(matcher.find()){
//         	int time=strToInt(matcher.group());
//         	times.add(time);
//         }
//         String strLrc=line.replaceAll(reg, "");
//         for (Iterator iterator = times.iterator(); iterator.hasNext();) {
// 			Integer integer = (Integer) iterator.next();
// 			treeMap.put(integer, strLrc);
// 		}
//         
//     }
// }


import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
import com.sequarius.lightplayer.R;
import com.sequarius.lightplayer.object.LrcParse;

			// TODO Auto-generated method stub

			TextView textView = new TextView(getActivity());
			textView.setTextSize(20);
			if (currentPosition == position) {
				textView.setTextColor(Color.WHITE);
				textView.setTextSize(23);
			} else {
				textView.setTextColor(Color.GRAY);
			}
			textView.setGravity(Gravity.CENTER);
			String strLrc = mLrcs.get(position);
			textView.setText(strLrc);
			return textView;
		}
	}
	/**
	 * ¸Ä±älrcµÄÏÔÊ¾Î»ÖÃ	
	 * @param position ¸ßÁÁµÄÎ»ÖÃ
	 */
	public void changeLrcPostion(int position) {
		mListView.smoothScrollToPosition(position + 18);
		mAdapter.currentPosition = position + 9;
		mAdapter.notifyDataSetChanged();

	}
	public void setLrc(String strFilePath){
		String lrcsPath="/sdcard/lrc/"+strFilePath;
		Log.i("myLog", lrcsPath);
		File file = new File(lrcsPath);

// Path: LightPlayer/src/com/sequarius/lightplayer/object/LrcParse.java
// public class LrcParse {
// 	private TreeMap<Integer, String> treeMap;
// 
// 	public LrcParse(File file) throws IOException, FileNotFoundException {
// 		super();
// 		InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "UTF-8");
//         BufferedReader bufferedReader = new BufferedReader(isr);
//         List<String> lines=new ArrayList<String>();
//         String line;
//         while ((line=bufferedReader.readLine())!=null) {
//             lines.add(line);
//         }
//         treeMap=new TreeMap<>();
//         for (Iterator<String> iterator = lines.iterator(); iterator.hasNext();) {
//             String string = (String) iterator.next();
//             parserLine(string);
//         }
//         bufferedReader.close();
// 	}
// 	/**
// 	 * ÓÃÓÚ·µ»Ø½âÎöºóµÄ¸è´Ê
// 	 * @return °´ÕÕÊ±¼äË³Ðò½âÎöºóMap¼¯ºÏ
// 	 */
// 	public TreeMap<Integer, String> getLrc(){
// 		return treeMap;
// 	}
// 	/**
// 	 * ½«StringÐÍµÄ×Ö·û´®½âÎö³ÉÊ±¼ä
// 	 * @param timeStr Ê±¼äµÄ×Ö·û´® ¸ñÊ½Îª[xx:xx.xx]
// 	 * @return ×ª»»ºóµÄºÁÃëintÊ±¼äÖµ
// 	 */
// 	private int strToInt(String timeStr){  
// 		//È¥³ý[]
//     	String reg="[\\[|\\]]";
//     	//½âÎö·ÖÖÖÎ»ÖÃ×Ö·û´®
// 		timeStr=timeStr.replaceAll(reg, "");
//         String[] strPre = timeStr.split(":");
//         int min = Integer.parseInt(strPre[0]);  
//         //½âÎöÃëºÍºÁÃëÎ»ÖÃ×Ö·û´®
//         int sec=0;  
//         int mill=0;  
//         if(strPre[1].contains(".")){  
//             String[] strNext=strPre[1].split("\\.");  
// //            System.out.println(s[1]);
//             sec =Integer.parseInt(strNext[0]);  
//             mill=Integer.parseInt(strNext[1]);  
//         }else{  
//             sec=Integer.parseInt(strPre[1]);  
//         }  
//         return min*60*1000+sec*1000+mill*10;  
//     }  
// 	/**
// 	 * ½âÎöÃ¿Ò»ÐÐµÄ¸è´Ê²¢´æÈëMap
// 	 */
//     private void parserLine(String line){
// 		String reg ="\\[(\\d{1,2}:\\d{1,2}\\.\\d{1,2})\\]|\\[(\\d{1,2}:\\d{1,2})\\]"; 
//         Pattern pattern = Pattern.compile(reg);  
//         Matcher matcher=pattern.matcher(line);
//         List<Integer> times=new ArrayList<Integer>();
//         while(matcher.find()){
//         	int time=strToInt(matcher.group());
//         	times.add(time);
//         }
//         String strLrc=line.replaceAll(reg, "");
//         for (Iterator iterator = times.iterator(); iterator.hasNext();) {
// 			Integer integer = (Integer) iterator.next();
// 			treeMap.put(integer, strLrc);
// 		}
//         
//     }
// }


// Path: LightPlayer/src/com/sequarius/lightplayer/fragment/LyricFragment.java
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
import com.sequarius.lightplayer.R;
import com.sequarius.lightplayer.object.LrcParse;

			// TODO Auto-generated method stub

			TextView textView = new TextView(getActivity());
			textView.setTextSize(20);
			if (currentPosition == position) {
				textView.setTextColor(Color.WHITE);
				textView.setTextSize(23);
			} else {
				textView.setTextColor(Color.GRAY);
			}
			textView.setGravity(Gravity.CENTER);
			String strLrc = mLrcs.get(position);
			textView.setText(strLrc);
			return textView;
		}
	}
	/**
	 * ¸Ä±älrcµÄÏÔÊ¾Î»ÖÃ	
	 * @param position ¸ßÁÁµÄÎ»ÖÃ
	 */
	public void changeLrcPostion(int position) {
		mListView.smoothScrollToPosition(position + 18);
		mAdapter.currentPosition = position + 9;
		mAdapter.notifyDataSetChanged();

	}
	public void setLrc(String strFilePath){
		String lrcsPath="/sdcard/lrc/"+strFilePath;
		Log.i("myLog", lrcsPath);
		File file = new File(lrcsPath);

		LrcParse lrc = null;
