目錄JAVA操作文件在經(jīng)常會使用到,,本文匯總了部分JAVA操作文件的讀取常用工具類,,希望可以幫到大家。直接上代碼,。 一,、讀取文件成字節(jié)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 | //讀取文件成字節(jié)數(shù)組 public static byte [] file2byte(String path){ try { FileInputStream in = new FileInputStream( new File(path)); byte [] data= new byte [in.available()]; in.read(data); in.close(); return data; } catch (Exception e) { e.printStackTrace(); return null ; } } |
與一中的讀取文件成字節(jié)類似,,字節(jié)寫入文件使用FileOutputStream流,,即可將字節(jié)寫入到文件中。調(diào)用FileOutputStream的write()方法,,寫入數(shù)據(jù),,之后關(guān)流。
1 2 3 4 5 6 7 8 9 10 | //將字節(jié)數(shù)組寫入文件 public static void byte2file(String path, byte [] data) { try { FileOutputStream outputStream = new FileOutputStream( new File(path)); outputStream.write(data); outputStream.close(); } catch (Exception e) { e.printStackTrace(); } } |
經(jīng)常遇到需要將一個文檔中的文本按行輸出,,這是我們可以使用BufferedReader 和 InputStreamReader流處理,。具體代碼如下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | //按行讀取文件成list public static ArrayList<String> file2list(String path,String encoder) { ArrayList<String> alline= new ArrayList<String>(); try { BufferedReader in = new BufferedReader( new InputStreamReader( new FileInputStream(path),encoder)); String str= new String(); while ((str=in.readLine())!= null ) { alline.add(str); } in.close(); } catch (Exception e) { e.printStackTrace(); } return alline; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | //輸出list到文件 public static void list2file(String path,ArrayList<String> data,String encoder) { try { BufferedWriter out = new BufferedWriter( new OutputStreamWriter( new FileOutputStream(path),encoder)); for (String str:data) { out.write(str); out.newLine(); } out.flush(); out.close(); } catch (Exception e) { e.printStackTrace(); } } |
1 2 3 4 5 | //從標準輸入中讀入 public static String system2str() throws IOException{ BufferedReader stdin= new BufferedReader( new InputStreamReader(System.in)); return stdin.readLine(); } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | //讀取文件成字符串 public static String file2str(String path,String encoder){ StringBuilder sb= new StringBuilder(); try { BufferedReader in = new BufferedReader( new InputStreamReader( new FileInputStream(path),encoder)); String str= new String(); while ((str=in.readLine())!= null ) { sb.append(str); } in.close(); } catch (Exception e) { e.printStackTrace(); } return sb.toString(); } |
1 2 3 4 5 6 7 8 9 10 11 | //輸出字符串到文件 public static void str2file(String path,String data,String encoder){ try { BufferedWriter out = new BufferedWriter( new OutputStreamWriter( new FileOutputStream(path),encoder)); out.write(data); out.flush(); out.close(); } catch (Exception e) { e.printStackTrace(); } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | //讀取文件成數(shù)據(jù)矩陣 public static ArrayList<Double> file2matrix(String path){ ArrayList<Double> alldata= new ArrayList<Double>(); try { DataInputStream in= new DataInputStream( new BufferedInputStream( new FileInputStream(path))); //利用DataInputStream來讀數(shù)據(jù) while ( true ) { alldata.add(in.readDouble()); } } catch (Exception e) { e.printStackTrace(); } return alldata; } |
對文件的操作方式還有很多,本文使用的只是一個基礎(chǔ)的參考示例,,到此這篇關(guān)于JAVA文件讀取常用工具類(8種)的文章就介紹到這了,更多相關(guān)JAVA文件讀取內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家,!
|
來自: wenxuefeng360 > 《待分類1》