JAVA 輸入與輸出
本電子書由站長百科(www.zzbaike.com)教程組制作JAVA 輸入與輸出?? 出處:站長百科?原文地址:http://www.zzbaike.com/wiki/JAVA_輸入/輸出???
本電子書由站長百科


(www.zzbaike.com)教程組制作
JAVA 輸入與輸出
?
? 出處:站長百科?原文地址:http://www.zzbaike.com/wiki/JAVA_輸入/輸出??
? 本電子書整理自站長百科JAVA_輸入/輸出詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?
首家推出中文網(wǎng)站() 的美國主機(jī)商 無限空間 無限流量 贈送15個(gè)獨(dú)立IP 及 3個(gè)免費(fèi)域名 免備案 支付寶付款方便快捷 中文客服全程服務(wù) 省錢大攻略: 為您省多多
輸入/輸出(I/O)是每一項(xiàng)計(jì)算機(jī)語言,必須有的東西。不讓人輸入數(shù)據(jù)的話,計(jì)算機(jī)怎么處理數(shù)據(jù)呢?在java 語 言中,I/O的方式是流的方式。流(stream)這是個(gè)學(xué)習(xí)java輸入輸出的最基本的概念。流是字節(jié)從源到目的的有序序列。一方面是字節(jié),一方面是有 序的。流描述的是一個(gè)過程,順序嚴(yán)格。一個(gè)需要鍵盤輸入的程序可以用流來做到這一點(diǎn)。兩種基本的流是:輸入流和輸出流。你可以從輸入流讀,但你不能對它 寫。要從輸入流讀取字節(jié),必須有一個(gè)與這個(gè)流相關(guān)聯(lián)的字符源。這些東西都放在java.io.*這個(gè)包里了。io是java的第一大包。在java.io 包中,有一些流是結(jié)點(diǎn)流,即它們可以從一個(gè)特定的地方讀寫,例如磁盤或者一塊內(nèi)存。其他流稱作過濾流。一個(gè)過濾器輸入流是用一個(gè)到已存在的輸入流的連接創(chuàng) 建的。此后,當(dāng)你試圖從過濾輸入流對象讀時(shí),它向你提供來自另一個(gè)輸入流對象的字符。
常見的幾種流:
字節(jié)流:傳字節(jié)的。以8位字節(jié)為單位進(jìn)行讀寫,以InputStream 與
OutputStream 為基礎(chǔ)類
?
? 出處:站長百科?原文地址:??
本電子書整理自站長百科詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。??
,本電子書由站長百科(www.zzbaike.com)教程組制作
字符流: 傳字符的。以16位字符為單位進(jìn)行讀寫,以Reader 與Writer 為基礎(chǔ)類
文件流: 傳文件的。屬于節(jié)點(diǎn)流,對文件讀寫,傳輸。里面的類很多。 序列化:傳對象的。一個(gè)對象怎么讀啊,只有變成二進(jìn)制才可以讀,這就是序列化。
實(shí)踐:
//這是一個(gè)字節(jié)流的例子,以InputStream 與OutputStream 為基礎(chǔ)類
import java.io.*;
class ByteArrayOutputStreamDemo {
public static void main(String args[]) throws IOException {
ByteArrayOutputStream f = new ByteArrayOutputStream();
String s = "This should end up in the array";
byte buf[] = s.getBytes();
f.write(buf);
System.out.println("Buffer as a string");
System.out.println(f.toString());
?
? 出處:站長百科?原文地址:??
本電子書整理自站長百科

詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。??
,本電子書由站長百科(www.zzbaike.com)教程組制作
System.out.println("Into array");
byte b[] = f.toByteArray();
for (int i=0; i System.out.print((char) b[i]);} System.out.println("nTo an OutputStream()"); //輸出到文件test.txt 中 OutputStream f2 = new FileOutputStream("test.txt"); f.writeTo(f2); f2.close(); System.out.println("Doing a reset"); f.reset(); for (int i=0; i<3; i ) f.write('X'); System.out.println(f.toString());}} //字符流的例子,以Reader 與Writer 為基礎(chǔ)類 ? ? 出處:站長百科?原文地址:?? 本電子書整理自站長百科 詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?? 本電子書由站長百科(www.zzbaike.com)教程組制作 import java.io.*; public class CharArrayReaderDemo { public static void main(String args[]) throws IOException { String tmp = "abcdefghijklmnopqrstuvwxyz"; int length = tmp.length(); char c[] = new char[length]; tmp.getChars(0, length, c, 0); CharArrayReader input1 = new CharArrayReader(c); CharArrayReader input2 = new CharArrayReader(c, 0, 5); int i; System.out.println("input1 is:"); while((i = input1.read()) != -1) { System.out.print((char)i);} System.out.println(); System.out.println("input2 is:"); ? 出處:站長百科? ? 原文地址:?? ? 本電子書整理自站長百科 詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。? 本電子書由站長百科(www.zzbaike.com)教程組制作 while((i = input2.read()) != -1) { System.out.print((char)i);} System.out.println(); }} //文件流的例子 import java.io.*; class FileInputStreamDemo { public static void main(String args[]) throws Exception { int size; InputStream f = new FileInputStream("FileInputStreamDemo.java"); System.out.println("Total Available Bytes: " (size = f.available())); int n = size/40; System.out.println("First " n ? ? 出處:站長百科?原文地址:?? 本電子書整理自站長百科 詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?? 本電子書由站長百科(www.zzbaike.com)教程組制作 " bytes of the file one read() at a time"); for (int i=0; i < n; i ) { System.out.print((char) f.read()); } System.out.println("nStill Available: " f.available()); System.out.println("Reading the next " n " with one read(b[])"); byte b[] = new byte[n]; if (f.read(b) != n) { System.err.println("couldn't read " n " bytes."); } System.out.println(new String(b, 0, n)); System.out.println("nStill Available: " (size = f.available())); System.out.println("Skipping half of remaining bytes with skip()"); ? ? 出處:站長百科?原文地址:?? 本電子書整理自站長百科 詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?? 本電子書由站長百科(www.zzbaike.com)教程組制作 f.skip(size/2); System.out.println("Still Available: " f.available()); System.out.println("Reading " n/2 " into the end of array"); if (f.read(b, n/2, n/2) != n/2) { System.err.println("couldn't read " n/2 " bytes."); } System.out.println(new String(b, 0, b.length)); System.out.println("nStill Available: " f.available()); f.close(); } } 更多電子書 SEO 方面的知識有很多,對于新手來說,如果你不知道,不清楚這方面的知識,那么,你可以看看這兩部搜索引擎指南: SEO 搜索引擎優(yōu)化基礎(chǔ)教程: SEO 搜索引擎優(yōu)化高級教程: ? ? ? 出處:站長百科?原文地址:??本電子書整理自站長百科 詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。? 本電子書由站長百科(www.zzbaike.com)教程組制作 wordpress的中文翻譯文檔:http://www.wordpress.la/codex.html,wordpress 開發(fā)的相關(guān)知識都有,對WordPress開發(fā)感興趣的博主會有一定的用處。 WordPress免費(fèi)主題:http://www.wordpress.la/theme.html WordPress免費(fèi)插件:http://www.wordpress.la/plugin.html WordPress 主題制作電子書: Apache2.2中文文檔電子書: IXWeHosting 控制面板使用手冊(在線版 PDF電子書) : 更多電子書下載:http://down.zzbaike.com/ebook/ 視頻教程: 1. 美國主機(jī)IXWebHosting 使用視頻教程(在線觀看及下載) 2. Godaddy 主機(jī)及域名使用視頻教程(在線觀看及下載) 如果您有站長類電子書,請到這里與我們分享: 詳情見: http://bbs.zzbaike.com/thread-23156-1-1.html 站長百科感謝您下載閱讀,多謝支持! ? ? 出處:站長百科?原文地址:?? 本電子書整理自站長百科 詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。??




