已采納回答 / SHsama
兩個漢字,四個字節(jié)。按你所說,你覺得應(yīng)該使用四次寫操作,但是那是相對于直接寫入字符來說的,此處使用了字節(jié)數(shù)組,數(shù)組相當(dāng)于一個有序的容器,在數(shù)組中”中國“被分成四個字節(jié)依次寫入其中,out.write(bytes);就將這個數(shù)組寫入其中,數(shù)組其中的寫字節(jié)操作在內(nèi)部進(jìn)行,不是靠四個write操作寫入的。你可以將鼠標(biāo)放到你寫的write上可看到該方法提示W(wǎng)rites b.length bytes from the specified byte array to this file
output stream....
2017-03-05
已采納回答 / 向上看
因?yàn)槟忝縭un一次,指針都是從0開始的,每run一次都改寫了上一次內(nèi)容,你可以嘗試運(yùn)行一下老師的程序,然后再在程序前添加 raf.seek(12),使下一次從12byte處開始寫,運(yùn)行后你會發(fā)現(xiàn)輸出長度為24
2017-03-03
已采納回答 / 張土土
只有read是讀一個字節(jié)就輸出一個,遇到-1結(jié)束,用上數(shù)組,就是讀取一定個數(shù)(數(shù)組長度)字節(jié)后(遇到-1結(jié)束)才輸出。
2017-02-28
已采納回答 / wakinzc
因?yàn)镾tudent中的字段都會被默認(rèn)的進(jìn)行序列化,如果有的字段被transient關(guān)鍵字修飾 則不會被序列化,需要手動序列化。
2017-02-28
已采納回答 / 歷飛雨
前面不是設(shè)定了一個條件嗎?每輸出10個byte就換行,這個if語句就是用來換行的while((b=in.read())!=-1){?? ??? ??? ?if(b<=0xf)//如果輸出的整形b字節(jié)小于等于4位,就讓它補(bǔ)0,就是讓它剛好占一個字節(jié),便于觀察?? ??? ??? ??? ?System.out.print("0");?? ??? ??? ?System.out.print(Integer.toHexString(b)+" ");//將整形b轉(zhuǎn)換為十六進(jìn)制表示的字符串?? ??? ???...
2017-02-26
已采納回答 / chapelin_wang
老師可能手誤吧,正常邏輯是如果文件不存在,則新建文件,否則就刪除。至于異常,你調(diào)用的這個方法,它拋出了一些異常,在這里你要做處理,要么try catch, 要么繼續(xù)向上拋(throws),如果回答有誤,請聯(lián)系我。本人也是小菜鳥一枚。
2017-02-26
已采納回答 / 歷飛雨
java中0x開頭表示的是該數(shù)為十六進(jìn)制,如int i=0xf;//以0x開頭表示十六進(jìn)制的寫法以0開頭的表示該數(shù)是八進(jìn)制,如 int n=010;//以0開頭表示八進(jìn)制0xff中的f指的是十六進(jìn)制中的f,f轉(zhuǎn)換為十進(jìn)制是15,f轉(zhuǎn)換為二進(jìn)制是1111(前頭可以根據(jù)位數(shù)的不同來補(bǔ)0)0xff中的ff指的是十六進(jìn)制中的ff,ff轉(zhuǎn)換為十進(jìn)制就是255,ff轉(zhuǎn)換為二進(jìn)制就是1111 1111(前頭可以根據(jù)位數(shù)的不同來補(bǔ)0)
2017-02-23
已采納回答 / qq__6307
先說說概念 RandomAccessFile 這個類 是對文件進(jìn)行 讀寫 操作 而且 這個寫 只是往里寫東西 說白了就是 按照你輸出的次序?qū)懭胛募?,或?進(jìn)行拷貝。所以不能進(jìn)行刪除操作。File類可以進(jìn)行對文件屬性的訪問有此操作,你可以結(jié)合在一起使用。
2017-02-18
已采納回答 / 向上看
byte[] buf=new byte[(int)raf.length()] //創(chuàng)建一個與raf內(nèi)字節(jié)長度等長的字節(jié)數(shù)組raf.read(buf)//將raf內(nèi)的內(nèi)容以字節(jié)形式存在buf字節(jié)數(shù)組中
2017-02-11
已采納回答 / 律生息
一切都是由于BOM當(dāng)我們直接在記事本中直接創(chuàng)建文本文件,不使用另存為那么文本文件默認(rèn)以ansi編碼來保存文字信息,卻沒有給他加上BOM,(BOM)就是該文本編碼格式的標(biāo)記,用來告訴記事本(或者其他軟件這里面的內(nèi)容有什么編碼來解析)另存為這個過程就是加了BOM你沒有另存為就沒有BOM那么問題來了記事本說“mdzz,這到底要我怎么解析呢?沒辦法,一個個試吧,誒!“由于默認(rèn)的聯(lián)通,聯(lián),在用ANSI保存時,編碼格式類似UTF-8,所以解析為utf-8,而聯(lián)想不符合utf-8編碼規(guī)則于是乎內(nèi)容就生氣了“。。。。。。...
2017-02-05