Java IO流(三)

2014-11-24 10:14:25 · 作者: · 浏览: 2
定向





 // 输入输出重定向 
public static void PrintStreamDemo2(){
// 此刻直接输出到控制台
System.out.println("hello");
File file = new File(filepath);
try{
System.setOut(new PrintStream(new FileOutputStream(file)));
}catch(FileNotFoundException e){
e.printStackTrace();
}
System.out.println("这些内容在文件中才能看到哦!");
}


  // 使用OutputStream向控制台输出内容 
public static void OutputStreamDemo(){

try {
OutputStream out = System.out;
out.write("输出到控制台".getBytes());
out.close();
} catch (Exception e) {
}
}




 
14 BufferedReader





   // bufferedReader 只接受字符输入流。 
public static void BufferedReader1(){

// System.in 流转换成 字符输入流 InputStreamReader
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in)
);

System.out.println("请输入内容:");
try {
String str = br.readLine();
System.out.println("你输入的内容是:"+str);
} catch (IOException e) {
e.printStackTrace();
}

}




 


 


15 Scanner





    // 采用Scanner类来进行数据输入, 
public static void ScannerDemo(){

Scanner scanner = new Scanner(System.in);
System.out.println("请输入内容:");
String str = scanner.nextLine();
System.out.println("你输入的内容是:"+str);
}


   // Scanner 从文件中读取内容 
// Scanner可以接受任何的输入流
public static void Scanner2(){

File file = new File(filepath);
try {
Scanner scanner = new Scanner(file);
String str = scanner.next();
System.out.println("文件中的内容为:"+str);
} catch (FileNotFoundException e) {
e.printStackTrace();
}

}






16 数据操作流DataOutputStream、DataInputStream类









html">  //数据操作流DataOutputStream、DataInputStream类 

public static void DataOutputStreamDemo(){

File file = new File(filepath);
char[] ch = {'A','B','C'};
try {
DataOutputStream ds = new DataOutputStream(new FileOutputStream(file));
for (char c : ch) {
ds.writeChar(c);
}
ds.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

public static void DataInputStreamDemo(){

File file = new File(filepath);
try {
DataInputStream ds = new DataInputStream(new FileInputStream(file));
char[] ch = new char[3];
char c;
int len =0;
while((c=ds.readChar())!='C'){
ch[len] = c;
len++;
}
System.out.println(ch);
ds.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}




//DataInputStream.available()==0 判断到达文件末尾




17.合并流 SequenceInputStream








// 合并流 SequenceInputStreamDemo 
public static void SequenceInputStreamDemo(){

File file1 = new File("d:" + File.separator + "hello1.txt");
File file2 = new File("d:" +