天天看点

文件读写的综合运用Reader Writer InputStream OutputStream

[b]一。基于字节的输入流[/b][img]http://www.blogjava.net/images/blogjava_net/pengpenglin/J2SE/java-io-inputstream.JPG[/img]

[b]二。基于字节的输出流[/b]

[img]http://www.blogjava.net/images/blogjava_net/pengpenglin/J2SE/java-io-outputstream.JPG[/img]

[b]三。基于字符的输入流[/b]

[img]http://www.blogjava.net/images/blogjava_net/pengpenglin/J2SE/java-io-reader.JPG[/img]

[b]四。基于字符的输出流[/b]

[img]http://www.blogjava.net/images/blogjava_net/pengpenglin/J2SE/java-io-writer.JPG[/img]

import java.io.*;

public class ReadWriteFile {

public static void writeF(File f){

OutputStream os = null;

String str = "文件读写";

try {

os = new FileOutputStream(f);

byte[] b = str.getBytes();

os.write(b);

} catch (IOException e) {

e.printStackTrace();

}

System.out.println("写入成功");

}

public static String readF(File f){

String str ="";

InputStream is = null;

Reader r = null;

int button = 2;

try{

switch(button){

case 1:{

System.out.println("InputStream");

is = new FileInputStream(f);

BufferedInputStream br = new BufferedInputStream(is);

byte[] b = new byte[br.available()];

br.read(b);

str = new String(b);

break;

}

case 2:{

System.out.println("Reader");

r = new FileReader(f);

BufferedReader br = new BufferedReader(r);

StringBuffer sb = new StringBuffer();

while((str = br.readLine()) != null){

sb.append(str);

}

str = new String(sb);

break;

}

}

}catch(IOException e){

e.printStackTrace();

}

return str;

}

public static void main(String[] args){

File f = new File("c:\\1.txt");

writeF(f);

System.out.println(readF(f));

}

}

[/code]