javaread,javaread方法

本文目錄一覽:

java中read()方法的使用

位元組流的read()方法是操作位元組流的,字元流的read()方法是操作unicode字元的。

可以通過BufferedReader

流的形式進行流緩存,通過read()方法獲取到緩存的內容。

示例代碼:

BufferedReader

bre

=

null;

try

{

String

file

=

“X:/xxxx/xxxx.txt”;//文件地址

bre

=

new

BufferedReader(new

FileReader(file));//獲取到的bre就是整個文件的緩存流

while

(

bre.read()

!=

-1)

{//

判斷是否為最後一個位元組,若是則結束循環

System.out.println(bre.read());//輸出讀到的內容

};

bre.close();//切記需要寫close()關閉流

備註:位元組流讀取過程中很容易出現亂碼,建議可以用readLine方式進行逐行的讀取。

java中read()方法的原理是什麼?

既然你能看到這個方法的源代碼,那你也應該能看到FilterInputStream類的其它方法的源代碼,FilterInputStream類中有十個方法和一個InputStream類型的變數,變數名是in。

十個方法里有九個是重寫InputStream類的方法,並且八個是直接調用變數in的同名同參方法,另一個也只是在調用in的方法時填了兩個默認參數。

而十個方法中的另一個方法是構造方法,參數是InputStream的,在方法中,直接把這個參數賦給了變數in。

所以FilterInputStream實質上只是對InputStream類做了一個簡單的封裝,實際調用的方法是在構造方法里傳過來的InputStream對象的方法。

所以想看read()方法的具體實現,應給去找InputStream類或InputStream類的子類

java流的read方法返回值怎麼來的?

inputstream的read函數 在很多地方都有用到 比如鍵盤輸入或文件流輸入或socket輸入

read的返回值 並不是真正得到的數據,而是得到的數據的長度

你每次會希望讀入一定的長度,比如你想讀10個byte 如果剩餘的byte數足夠,將會讀滿所需要的位元組數,如果剩餘的位元組數不夠 將會返回一個小於你所讀的數 如果讀到-1 表示讀取結束(經常在socket和文件讀取遇到)

Java:關於IO流中的read()方法

API說明:

public int read() throws IOException

從此輸入流中讀取一個數據位元組。如果沒有輸入可用,則此方法將阻塞。

指定者:類 InputStream 中的 read

返回:下一個數據位元組;如果已到達文件末尾,則返回 -1。

拋出:IOException – 如果發生 I/O 錯誤。

個人理解:

該方法將輸入按位元組讀入,當讀取到位元組時就返回該位元組的int型數值(可以將其強制轉換成byte類型),如果讀取到文件末尾也就是無數據可讀時則返回-1,表示以讀到文件末尾。順便說一句按此方法讀取時需要將讀到的int轉成byte同時存入到一個足夠大的byte數組中,然後根據該數組構造字元串,顯示結果!

例:

public static void main(String[] args) throws IOException {

File f = new File(“E:/java文件/demo1.txt”);

InputStream ins = new FileInputStream(f);

byte[] bb = new byte[1024];

int temp = 0;

int i = 0;

while ((temp = ins.read()) != -1) {

bb[i++] = (byte) temp;

System.out.println((byte) temp);

}

System.out.println(new String(bb, “UTF-8”).trim());

}

關於Byte的toString()方法:

返回表示此 Byte 的值的 String 對象。該值被轉換成有符號的十進位表示形式,並作為一個 string 返回,正如將 byte 值作為一個參數指定給 toString(byte) 方法所返回的一樣。

覆蓋:類 Object 中的 toString

返回:以基數 10 表示的此對象值的字元串表示形式。

Java 編程下 IO 中的輸入流的 read 方法返回值為什麼是 int 值

java中read方法返回的int類型:如果返回char, 那麼無法表示流末尾. char的取值範圍是從0到65535。這個範圍內的所有字元, 都有可能在數據中出現。需要使用一個不可能在數據中出現的值來表示流末尾。那麼Java中就是用-1來表示這個末尾的, 因為-1不會在數據中出現。而為了返回-1, 那麼只能用int。當流中讀取到一個字元時, read()方法內部就會當作int返回, 如果讀到流末尾, 直接返回-1。

java怎麼用read()每次讀文件中的四個位元組保存在數組中

java使用read()方法進行讀文件中的四個位元組保存在數組總的示例如下:

public static void main(String[] arg) throws Exception {

BufferedReader reader = new BufferedReader(new FileReader(“E:/test.txt”));

int[] list = new int[20];

int i = 0;

String line = null;

while ((line = reader.readLine()) != null) {

String[] vStrs = line.split(” “);

for (String str : vStrs) {

list[i++] = Integer.parseInt(str);

}

}

System.out.println(Arrays.toString(list));

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/232185.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-11 12:49
下一篇 2024-12-11 12:49

相關推薦

  • 解決.net 6.0運行閃退的方法

    如果你正在使用.net 6.0開發應用程序,可能會遇到程序閃退的情況。這篇文章將從多個方面為你解決這個問題。 一、代碼問題 代碼問題是導致.net 6.0程序閃退的主要原因之一。首…

    編程 2025-04-29
  • ArcGIS更改標註位置為中心的方法

    本篇文章將從多個方面詳細闡述如何在ArcGIS中更改標註位置為中心。讓我們一步步來看。 一、禁止標註智能調整 在ArcMap中設置標註智能調整可以自動將標註位置調整到最佳顯示位置。…

    編程 2025-04-29
  • Python創建分配內存的方法

    在python中,我們常常需要創建並分配內存來存儲數據。不同的類型和數據結構可能需要不同的方法來分配內存。本文將從多個方面介紹Python創建分配內存的方法,包括列表、元組、字典、…

    編程 2025-04-29
  • Python中init方法的作用及使用方法

    Python中的init方法是一個類的構造函數,在創建對象時被調用。在本篇文章中,我們將從多個方面詳細討論init方法的作用,使用方法以及注意點。 一、定義init方法 在Pyth…

    編程 2025-04-29
  • Python中讀入csv文件數據的方法用法介紹

    csv是一種常見的數據格式,通常用於存儲小型數據集。Python作為一種廣泛流行的編程語言,內置了許多操作csv文件的庫。本文將從多個方面詳細介紹Python讀入csv文件的方法。…

    編程 2025-04-29
  • 用不同的方法求素數

    素數是指只能被1和自身整除的正整數,如2、3、5、7、11、13等。素數在密碼學、計算機科學、數學、物理等領域都有著廣泛的應用。本文將介紹幾種常見的求素數的方法,包括暴力枚舉法、埃…

    編程 2025-04-29
  • 使用Vue實現前端AES加密並輸出為十六進位的方法

    在前端開發中,數據傳輸的安全性問題十分重要,其中一種保護數據安全的方式是加密。本文將會介紹如何使用Vue框架實現前端AES加密並將加密結果輸出為十六進位。 一、AES加密介紹 AE…

    編程 2025-04-29
  • Python學習筆記:去除字元串最後一個字元的方法

    本文將從多個方面詳細闡述如何通過Python去除字元串最後一個字元,包括使用切片、pop()、刪除、替換等方法來實現。 一、字元串切片 在Python中,可以通過字元串切片的方式來…

    編程 2025-04-29
  • 用法介紹Python集合update方法

    Python集合(set)update()方法是Python的一種集合操作方法,用於將多個集合合併為一個集合。本篇文章將從以下幾個方面進行詳細闡述: 一、參數的含義和用法 Pyth…

    編程 2025-04-29
  • Vb運行程序的三種方法

    VB是一種非常實用的編程工具,它可以被用於開發各種不同的應用程序,從簡單的計算器到更複雜的商業軟體。在VB中,有許多不同的方法可以運行程序,包括編譯器、發布程序以及命令行。在本文中…

    編程 2025-04-29

發表回復

登錄後才能評論