gpt4 book ai didi

java - BufferedReader vs Scanner,FileInputStream vs FileReader?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:56:11 33 4
gpt4 key购买 nike

有人可以向我解释为什么我可以将 FileInputStream 或 FileReader 用于 BufferedReader 吗?有什么不同?同时,Scanner 相对于 BufferedReader 的优势是什么?我读到它有助于标记化,但这意味着什么?

最佳答案

try {
//Simple reading of bytes
FileInputStream fileInputStream = new FileInputStream("path to file");
byte[] arr = new byte[1024];
int actualBytesRead = fileInputStream.read(arr, 0, arr.length);

//Can read characters and lines now
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(fileInputStream));
String lineRead = bufferedReader.readLine();
char [] charArrr = new char[1024];
int actulCharsRead = bufferedReader.read(charArrr, 0, charArrr.length);

//File reader allows reading of characters from a file
FileReader fileReader = new FileReader("path to file");
actulCharsRead = fileReader.read(charArrr, 0, charArrr.length);

//It is a good idea to wrap a bufferedReader around a fileReader
BufferedReader betterFileReader = new BufferedReader(new FileReader(""));
lineRead = betterFileReader.readLine();
actulCharsRead = betterFileReader.read(charArrr, 0, charArrr.length);

//allows reading int, long, short, byte, line etc. Scanner tends to be very slow
Scanner scanner = new Scanner("path to file");
//can also give inputStream as source
scanner = new Scanner(System.in);
long valueRead = scanner.nextLong();

//might wanna check out javadoc for more info

} catch (IOException e) {
e.printStackTrace();
}

关于java - BufferedReader vs Scanner,FileInputStream vs FileReader?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27157346/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com