1、java讀取txt文件內容java
import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.Reader; /** * @author 碼農小江 * H20121012.java * 2012-10-12下午11:40:21 */ public class H20121012 { /** * 功能:Java讀取txt文件的內容 * 步驟:1:先得到文件句柄 * 2:得到文件句柄當作是輸入一個字節碼流,須要對這個輸入流進行讀取 * 3:讀取到輸入流後,須要讀取生成字節流 * 4:一行一行的輸出。readline()。 * 備註:須要考慮的是異常狀況 * @param filePath */ public static void readTxtFile(String filePath){ try { String encoding="GBK"; File file=new File(filePath); if(file.isFile() && file.exists()){ //判斷文件是否存在 InputStreamReader read = new InputStreamReader( new FileInputStream(file),encoding);//考慮到編碼格式 BufferedReader bufferedReader = new BufferedReader(read); String lineTxt = null; while((lineTxt = bufferedReader.readLine()) != null){ System.out.println(lineTxt); } read.close(); }else{ System.out.println("找不到指定的文件"); } } catch (Exception e) { System.out.println("讀取文件內容出錯"); e.printStackTrace(); } } public static void main(String argv[]){ String filePath = "L:\\Apache\\htdocs\\res\\20121012.txt"; // "res/"; readTxtFile(filePath); } }
2、截取指定字符串中的某段字符數組
例如:字符串=「房估字(2014)第YPQD0006號」
網絡
String str = "房估字(2014)第YPQD0006號"; String result = str.substring(str.indexOf("第")+1, str.indexOf("號"));
其中,substring函數有兩個參數:函數
一、第一個參數是開始截取的字符位置。(從0開始)編碼
二、第二個參數是結束字符的位置+1。(從0開始)spa
indexof函數的做用是查找該字符串中的某個字的位置,而且返回。code
擴展:substring這個函數也能夠只寫一個參數,就是起始字符位置。這樣就會自動截取從開始到最後。blog
public class Test{ public static void main(String args[]){ String str = new String("0123456789"); System.out.println("返回值:" + str.substring(4); } }
結果爲:456789 注意:結果包括4。字符串
其餘示例:string
"hamburger".substring(3,8) returns "burge" "smiles".substring(0,5) returns "smile"
3、讀取txt並獲取某一部分字符串
某地址下的txt文件:list.txt
其內容:
test1=aa test2=bb test3=cc
能夠每次讀取一行,而後對單獨對每行進行處理
File file = new File("D:\\list.txt"); BufferedReader br = new BufferedReader(new FileReader(file)); String line = null; while((line = br.readLine())!= null){ //一次讀取一行 System.out.println(line); String[] tmp = line.split("="); //根據'='將每行數據拆分紅一個數組 for(int i=0; i<tmp.length; i++){ System.out.println("\t" + tmp[i]); //tmp[1]就是你想要的信息,如:bb } if(line.endsWith("bb")){ //判斷本行是否以bb結束 System.out.println("這是我想要的: " + tmp[1]); } } br.close();
4、對某一段字符串的修改
String str = "一我的至少擁有一個夢想,有一個理由去堅強。心若沒有棲息的地方,到哪裏都是在流浪。" if(str != null){
System.out.println(str.replace("一我的","一羣人"));
}
結果爲:一羣人至少擁有一個夢想,有一個理由去堅強。心若沒有棲息的地方,到哪裏都是在流浪。
注:以上內容來自網絡,簡單整理記錄。