導航:首頁 > 編程語言 > java中的字元流

java中的字元流

發布時間:2023-08-23 11:28:50

1. java字元流讀寫數據

就是序列化和反序列化,就是將對象轉化字元序列,將字元序列轉為對象的過程

package com.tx.test;


import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.ObjectInputStream;

import java.io.ObjectOutputStream;

import java.util.ArrayList;

import java.util.List;


public class test{

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

List<Student> list = new ArrayList<Student>();

list.add(new Student("as","男",14));

list.add(new Student("ass","男",18));

ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("data/out.txt"));

//輸出流保存的文件名為 my.out ;ObjectOutputStream能把Object輸出成Byte流

oos.writeObject(list);

oos.close();//序列化完畢

System.out.println("序列化完畢");

//反序列化

ObjectInputStream oin = null;

oin = new ObjectInputStream(new FileInputStream("data/out.txt"));

List<Student> stulist = null;

try {

stulist = (List<Student>) oin.readObject();

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

for(Student s : stulist) {

System.out.println(s.toString());

}

System.out.println("反序列化完成");

}

}


2. java io字元流和位元組流的區別

一句話概括:位元組流是由位元組組成的回,字元流是由字元組成的.Java里字元由兩個位元組組成.

擴展:答位元組流是最基本的,所有的InputStream和OutputStream的子類都是,主要用在處理二進制數據,它是按位元組來處理的
但實際中很多的數據是文本,又提出了字元流的概念,它是按虛擬機的encode來處理,也就是要進行字元集的轉化
實際上位元組流在操作時本身不會用到緩沖區(內存),是文件本身直接操作的,而字元流在操作時使用了緩沖區,通過緩沖區再操作文件。

3. java中有幾種類型的流

Java中的流分為兩種,一種是位元組流,另一種是字元流,分別由四個抽象類來表示(每種流包括輸入和輸出兩種所以一共四個):InputStream,OutputStream,Reader,Writer。Java中其他多種多樣變化的流均是由它們派生出來的.

字元流和位元組流是根據處理數據的不同來區分的。位元組流按照8位傳輸,位元組流是最基本的,所有文件的儲存是都是位元組(byte)的儲存,在磁碟上保留的並不是文件的字元而是先把字元編碼成位元組,再儲存這些位元組到磁碟。
1.位元組流可用於任何類型的對象,包括二進制對象,而字元流只能處理字元或者字元串;
2. 位元組流提供了處理任何類型的IO操作的功能,但它不能直接處理Unicode字元,而字元流就可以。
讀文本的時候用字元流,例如txt文件。讀非文本文件的時候用位元組流,例如mp3。理論上任何文件都能夠用位元組流讀取,但當讀取的是文本數據時,為了能還原成文本你必須再經過一個轉換的工序,相對來說字元流就省了這個麻煩,可以有方法直接讀取。
字元流處理的單元為2個位元組的Unicode字元,分別操作字元、字元數組或字元串,而位元組流處理單元為1個位元組, 操作位元組和位元組數組。所以字元流是由Java虛擬機將位元組轉化為2個位元組的Unicode字元為單位的字元而成的,所以它對多國語言支持性比較好!

閱讀全文

與java中的字元流相關的資料

熱點內容
計算機網路技術與應用視頻 瀏覽:924
linux裝apache 瀏覽:272
手機谷歌打不開網站怎麼辦 瀏覽:110
燈控台編程好了怎麼使用 瀏覽:342
如何用金山毒霸切斷網路連接 瀏覽:873
怎麼設置文件打開密碼怎麼設置 瀏覽:5
網路小說用什麼寫 瀏覽:956
擴展名為rm的文件如何打開 瀏覽:707
導入android項目沒有rjava 瀏覽:899
帶英文和數字的文件名 瀏覽:843
黃山數控編程培訓在哪裡 瀏覽:111
win10俠盜5無限讀取 瀏覽:557
js工廠模式 瀏覽:927
iphone6s清理緩存 瀏覽:465
ug編程怎麼選不上字體 瀏覽:435
pc文件加密哪個好 瀏覽:393
蘋果軟體更新4位密碼 瀏覽:96
手機如何將文件弄成文件夾 瀏覽:275
swordigo第四關 瀏覽:996
t420win10網卡驅動 瀏覽:805

友情鏈接