摘要:練習(xí)對(duì)文本的內(nèi)容進(jìn)行排序按照順序排序分析創(chuàng)建一個(gè)集合對(duì)象可以存儲(chǔ)每行文本的序號(hào)存儲(chǔ)每行的文本創(chuàng)建字符緩沖輸入流對(duì)象構(gòu)造方法中綁定字符輸入流創(chuàng)建字符緩沖輸出流對(duì)象構(gòu)造方法中綁定字符輸出流使用字符緩沖輸入流中的方法逐行讀取文本對(duì)讀取到的文本進(jìn)行
package com.itheima.demo01.BufferedStream;
import java.io.*;
import java.util.HashMap;
/*
練習(xí): 對(duì)文本的內(nèi)容進(jìn)行排序 按照(1,2,3....)順序排序 分析: 1.創(chuàng)建一個(gè)HashMap集合對(duì)象,可以:存儲(chǔ)每行文本的序號(hào)(1,2,3,..);value:存儲(chǔ)每行的文本 2.創(chuàng)建字符緩沖輸入流對(duì)象,構(gòu)造方法中綁定字符輸入流 3.創(chuàng)建字符緩沖輸出流對(duì)象,構(gòu)造方法中綁定字符輸出流 4.使用字符緩沖輸入流中的方法readline,逐行讀取文本 5.對(duì)讀取到的文本進(jìn)行切割,獲取行中的序號(hào)和文本內(nèi)容 6.把切割好的序號(hào)和文本的內(nèi)容存儲(chǔ)到HashMap集合中(key序號(hào)是有序的,會(huì)自動(dòng)排序1,2,3,4..) 7.遍歷HashMap集合,獲取每一個(gè)鍵值對(duì) 8.把每一個(gè)鍵值對(duì),拼接為一個(gè)文本行 9.把拼接好的文本,使用字符緩沖輸出流中的方法write,寫入到文件中 10.釋放資源
*/
public class Demo05Test {
public static void main(String[] args) throws IOException { //1.創(chuàng)建一個(gè)HashMap集合對(duì)象,可以:存儲(chǔ)每行文本的序號(hào)(1,2,3,..);value:存儲(chǔ)每行的文本 HashMapmap = new HashMap<>(); //2.創(chuàng)建字符緩沖輸入流對(duì)象,構(gòu)造方法中綁定字符輸入流 BufferedReader br = new BufferedReader(new FileReader("10_IOin.txt")); //3.創(chuàng)建字符緩沖輸出流對(duì)象,構(gòu)造方法中綁定字符輸出流 BufferedWriter bw = new BufferedWriter(new FileWriter("10_IOout.txt")); //4.使用字符緩沖輸入流中的方法readline,逐行讀取文本 String line; while((line = br.readLine())!=null){ //5.對(duì)讀取到的文本進(jìn)行切割,獲取行中的序號(hào)和文本內(nèi)容 String[] arr = line.split("."); //6.把切割好的序號(hào)和文本的內(nèi)容存儲(chǔ)到HashMap集合中(key序號(hào)是有序的,會(huì)自動(dòng)排序1,2,3,4..) map.put(arr[0],arr[1]); } //7.遍歷HashMap集合,獲取每一個(gè)鍵值對(duì) for(String key : map.keySet()){ String value = map.get(key); //8.把每一個(gè)鍵值對(duì),拼接為一個(gè)文本行 line = key + "." + value; //9.把拼接好的文本,使用字符緩沖輸出流中的方法write,寫入到文件中 bw.write(line); bw.newLine();//寫換行 } //10.釋放資源 bw.close(); br.close(); }
}
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/76239.html
摘要:字符轉(zhuǎn)換流原理字節(jié)流編碼表。和作為子類,僅作為操作字符文件的便捷類存在。源目的先根據(jù)需求明確要讀,還是要寫。屏幕網(wǎng)絡(luò)完全可以明確具體要使用哪個(gè)流對(duì)象。明確四是否需要額外功能呢額外功能轉(zhuǎn)換嗎轉(zhuǎn)換流。高效嗎緩沖區(qū)對(duì)象。 01轉(zhuǎn)換流概述 * A: 轉(zhuǎn)換流概述 * a: 轉(zhuǎn)換流概述 * OutputStreamWriter 是字符流通向字節(jié)流的橋梁:可使用指定的字符編碼...
摘要:上一篇文章標(biāo)準(zhǔn)庫內(nèi)置函數(shù)下一篇文章標(biāo)準(zhǔn)庫內(nèi)置函數(shù)內(nèi)置函數(shù)返回對(duì)象的長度元素個(gè)數(shù)。對(duì)表示單個(gè)字符的字符串,返回代表它碼點(diǎn)的整數(shù)。上一篇文章標(biāo)準(zhǔn)庫內(nèi)置函數(shù)下一篇文章標(biāo)準(zhǔn)庫內(nèi)置函數(shù) 上一篇文章:Python標(biāo)準(zhǔn)庫---3、內(nèi)置函數(shù)(G-H-I-J-K)下一篇文章:Python標(biāo)準(zhǔn)庫---5、內(nèi)置函數(shù)(P-K-R) 內(nèi)置函數(shù): showImg(https://segmentfault.com...
目錄 ??? 一,寫在前面 二,為什么使用文件 1,原因 2,數(shù)據(jù)流 3,緩沖區(qū)(Buffer) 4,C語言中帶緩沖區(qū)的文件處理 5,文件類型 6,文件存取方式 三,什么是文件 1,程序文件 ?2,數(shù)據(jù)文件 3,文件名 四,文件的打開和關(guān)閉? 1,文件指針 ?2,文件的打開和關(guān)閉 五,文件的順序讀寫 1,功能 2,代碼實(shí)現(xiàn) 六,文件的隨機(jī)讀寫 1,fseek 2,ftell 3,rewind 七,...
摘要:文件復(fù)制練習(xí)一讀一寫明確數(shù)據(jù)源數(shù)據(jù)的目的地文件復(fù)制的步驟創(chuàng)建字節(jié)緩沖輸入流對(duì)象構(gòu)造方法中傳遞字節(jié)輸入流創(chuàng)建字節(jié)緩沖輸出流對(duì)象構(gòu)造方法中傳遞字節(jié)輸出流使用字節(jié)緩沖輸入流對(duì)象中的方法讀取文件使用字節(jié)緩沖輸出流中的方法把讀取的數(shù)據(jù)寫入到內(nèi)部緩沖區(qū) package com.itheima.demo02.CopyFile; import java.io.*; /* 文件復(fù)制練習(xí):一讀一寫 明確...
摘要:字符流字符流是什么字符流是可以直接讀寫字符的流字符流讀取字符就要先讀取到字節(jié)數(shù)據(jù)然后轉(zhuǎn)為字符如果要寫出字符需要把字符轉(zhuǎn)為字節(jié)再寫出類的方法可以按照字符大小讀取通過項(xiàng)目默認(rèn)的碼表一次讀取一個(gè)字符賦值給將讀到的字符強(qiáng)轉(zhuǎn)后打印字符流類的方法可以 1_字符流FileReader 1.字符流是什么 字符流是可以直接讀寫字符的IO流 字符流讀取字符, 就要先讀取到字節(jié)數(shù)據(jù), 然后轉(zhuǎn)為字符. ...
閱讀 3161·2021-11-22 13:54
閱讀 3455·2021-11-15 11:37
閱讀 3617·2021-10-14 09:43
閱讀 3515·2021-09-09 11:52
閱讀 3618·2019-08-30 15:53
閱讀 2478·2019-08-30 13:50
閱讀 2069·2019-08-30 11:07
閱讀 900·2019-08-29 16:32