java基礎知識--IO流示例
阿新 • • 發佈:2019-01-01
本人的GitHub:戳我一下
示例(一)——File類的基本用法
/**
* File類的基本用法
*/
package com.yifanjia.one;
import java.io.*;
public class IO1 {
public static void main(String[] args) {
// //得到檔案物件
// File f =new File("I:\\11.txt");
// //得到檔案的路徑
// System.out.println("檔案路徑"+f.getAbsolutePath());
// //得到檔案的大小
// System.out.println("檔案大小"+f.length()+"個位元組");
//建立檔案
// File f = new File("I:\\12.txt");
// if(!f.exists()) {
// //可以建立
// try {
// f.createNewFile();
// } catch (IOException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
// }
// else {
// System.out.println("有檔案,不能建立");
//建立資料夾
// File f =new File("d:\\ff");
// if(f.isDirectory()) {
// System.out.println("資料夾存在");
// }
// else {
// f.mkdirs();
// }
//列出一個資料夾下面的所有檔案
File f = new File("I:\\專案");
if(f.isDirectory()) {
File[] lists = f.listFiles();
for (File t : lists) {
System.out.println("檔名 "+t.getName());
}
}
}
}
示例(二)——圖片拷貝
/**
* 圖片拷貝
*/
package com.yifanjia.one;
import java.io.*;
public class IO5 {
public static void main(String[] args) {
//思路:先把圖片讀入到記憶體,再把圖片寫入到檔案
//因為是二進位制未見,只能用位元組流完成
File f1 = new File("I:\\java\\TankGame\\src\\bomb_1.gif");
//if(!f1.exists()) System.out.println("dsasdas");
FileInputStream fis = null;
FileOutputStream fos = null;
try {
fis = new FileInputStream(f1);
fos = new FileOutputStream("D:\\11.gif");
byte[] buf = new byte[1024];
int n = 0;
while((n = fis.read(buf)) != -1) {
//輸出到指定檔案
fos.write(buf);
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
fis.close();
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
示例(三)——緩衝字元流案例
/**
* 演示緩衝字元流案例
*/
package com.yifanjia.one;
import java.io.*;
public class IO4 {
public static void main(String[] args) {
BufferedReader br = null;
BufferedWriter bw = null;
FileReader fr = null;
FileWriter fw = null;
// TODO Auto-generated method stub
try {
//先構建一個FileReader
fr = new FileReader(new File("I:\\11.txt"));
fw = new FileWriter(new File("I:\\21.txt"));
br = new BufferedReader(fr);
bw = new BufferedWriter(fw);
String s = "";
while((s = br.readLine()) != null) {
//輸出到檔案
bw.write(s+"\r\n");
}
} catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
} finally {
try {
br.close();
bw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}