亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

java依次讀取對(duì)話框的數(shù)據(jù) java按行讀取文件

有多種寫入和讀取文本文件的方法 。這在處理許多應(yīng)用程序時(shí)是必需的 。在 Java 中有多種方法可以讀取純文本文件,例如你可以使用FileReader、BufferedReader或Scanner來讀取文本文件 。每個(gè)實(shí)用程序都提供了一些特殊的東西 , 例如 BufferedReader 為快速讀取提供數(shù)據(jù)緩沖 , 而 Scanner 提供解析能力 。
方法:

  1. 使用 BufferedReader 類
  2. 使用 Scanner 類
  3. 使用文件閱讀器類
  4. 讀取列表中的整個(gè)文件
  5. 將文本文件讀取為字符串
我們還可以同時(shí)使用 BufferReader 和 Scanner 在 Java 中逐行讀取文本文件 。然后 Java SE 8 引入了另一個(gè) Stream 類java.util.stream.Stream,它提供了一種惰性且更有效的方式來讀取文件 。
讓我們更深入地討論上述每個(gè)方法,最重要的是通過一個(gè)干凈的 Java 程序?qū)崿F(xiàn)它們 。
方法一: 使用BufferedReader類
此方法從字符輸入流中讀取文本 。它確實(shí)緩沖以有效讀取字符、數(shù)組和行 ??梢灾付ň彌_區(qū)大小 , 也可以使用默認(rèn)大小 。對(duì)于大多數(shù)用途 , 默認(rèn)值足夠大 。通常,Reader 發(fā)出的每個(gè)讀取請(qǐng)求都會(huì)導(dǎo)致對(duì)底層字符或字節(jié)流發(fā)出相應(yīng)的讀取請(qǐng)求 。因此,建議將 BufferedReader 包裝在任何 read() 操作可能代價(jià)高昂的 Reader 周圍,例如 FileReaders 和 InputStreamReaders,如下所示:
BufferedReader in = new BufferedReader(Reader in, int size);例子:
import java.io.*;public class HY { public static void main(String[] args) throws Exception {File file = new File("C:\\Users\\pankaj\\Desktop\\test.txt");BufferedReader br= new BufferedReader(new FileReader(file));String st;while ((st = br.readLine()) != null)System.out.println(st); }}方法二: 使用 FileReader 類
讀取字符文件的便利類 。此類的構(gòu)造函數(shù)假定默認(rèn)字符編碼和默認(rèn)字節(jié)緩沖區(qū)大小是合適的 。
該類中定義的構(gòu)造函數(shù)如下:
  1. FileReader(File file): 給定要讀取的文件,創(chuàng)建一個(gè)新的 FileReader
  2. FileReader(FileDescriptor fd): 創(chuàng)建一個(gè)新的 FileReader,給定要從中讀取的 FileDescriptor
  3. FileReader(String fileName): 創(chuàng)建一個(gè)新的 FileReader,給出要讀取的文件名
例子:
import java.io.*;public class GFG { public static void main(String[] args) throws Exception {FileReader fr = new FileReader("C:\\Users\\pankaj\\Desktop\\test.txt");int i;while ((i = fr.read()) != -1)System.out.print((char)i); }}復(fù)制代碼方法 3: 使用 Scanner 類
一個(gè)簡(jiǎn)單的文本掃描器,可以使用正則表達(dá)式解析原始類型和字符串 。Scanner 使用分隔符模式將其輸入分解為標(biāo)記 , 默認(rèn)情況下與空格匹配 。然后可以使用各種 next 方法將結(jié)果令牌轉(zhuǎn)換為不同類型的值 。
示例 1: 使用循環(huán)
import java.io.File;import java.util.Scanner;public class ReadFromFileUsingScanner{public static void main(String[] args) throws Exception{File file = new File("C:\\Users\\pankaj\\Desktop\\test.txt");Scanner sc = new Scanner(file);while (sc.hasNextLine())System.out.println(sc.nextLine());}}示例 2: 不使用循環(huán)
import java.io.File;import java.io.FileNotFoundException;import java.util.Scanner;public class ReadingEntireFileWithoutLoop{public static void main(String[] args) throws FileNotFoundException{File file = new File("C:\\Users\\pankaj\\Desktop\\test.txt");Scanner sc = new Scanner(file);sc.useDelimiter("\\Z");System.out.println(sc.next());}}方法 4: 讀取列表中的整個(gè)文件
從文件中讀取所有行 。此方法可確保在讀取所有字節(jié)或拋出 I/O 錯(cuò)誤或其他運(yùn)行時(shí)異常時(shí)關(guān)閉文件 。使用指定的字符集將文件中的字節(jié)解碼為字符 。
語法:
public static List readAllLines(Path path,Charset cs)throws IOException此方法將以下內(nèi)容識(shí)別為行終止符:
\u000D 后跟 \u000A,回車后跟換行符\u000A,換行\(zhòng)u000D,回車例子
import java.util.*;import java.nio.charset.StandardCharsets;import java.nio.file.*;import java.io.*;public class ReadFileIntoList{public static List<String> readFileInList(String fileName){List<String> lines = Collections.emptyList();try{lines =Files.readAllLines(Paths.get(fileName), StandardCharsets.UTF_8);}catch (IOException e){e.printStackTrace();}return lines;}public static void main(String[] args){List l = readFileInList("C:\\Users\\pankaj\\Desktop\\test.java");Iterator<String> itr = l.iterator();while (itr.hasNext())System.out.println(itr.next());}}方法 5: 將文本文件讀取為字符串
例子
package io;import java.nio.file.*;;public class ReadTextAsString {public static String readFileAsString(String fileName)throws Exception{String datahttp://www.wokk.cn/= "";data = http://www.wokk.cn/new String(Files.readAllBytes(Paths.get(fileName)));return data;}public static void main(String[] args) throws Exception{String data = readFileAsString("C:\\Users\\pankaj\\Desktop\\test.java");System.out.println(data);}}【java依次讀取對(duì)話框的數(shù)據(jù) java按行讀取文件】如果本文對(duì)你有幫助,別忘記給我個(gè)3連 ,點(diǎn)贊,轉(zhuǎn)發(fā),評(píng)論,


    以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!

    「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助: