首页 > 编程 > Java > 正文

java File 类常用操作,和java 文件流常用操作演示

2019-11-08 00:40:25
字体:
来源:转载
供稿:网友

File类常用方法-演示

public static void main(String[] args) { //创建文件对象 File file = new File("D:/myDoc/myTest.txt");//解释构造 System.out.PRintln(file.exists()); //判断文件是否存在 if(file.exists()){ System.out.println(file.getName()); //获取文件名; System.out.println(file.length());//获得文件的大小 System.out.println(file.getPath());;//获取文件所在的相对路径 System.out.println(file.getAbsolutePath());//获取文件所在的绝对路径 } System.out.println(file.isFile());//判断是否是一个文件 System.out.println(file.isDirectory());//判断是否是文件夹。 try { file.createNewFile();//创建文件 System.out.println("创建成功!"); //file.delete();//删除文件 System.out.println("删除成功!"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }}

java 流的分类 这里写图片描述

演示:使用FileInputStream类读取文本文件

public static void main(String[] args) throws IOException { //1,创建输入,输出流对象 FileInputStream input = new FileInputStream("D:/myDoc/myTest.txt"); FileOutputStream out = new FileOutputStream("D:/myDoc/myTest1.txt"); //2.定义一个缓冲区,告诉程序一次性度多少。 byte[] datas = new byte[1024]; while(input.read()!=-1){ input.read(datas);//读进缓冲区 out.write(datas);//从缓冲区写入到文件当中 } input.close();//关闭管道,输入流 out.close();//关闭管道,输出流 System.out.println("拷贝成功");}

使用字符流读写文件(演示)

public static void main(String[] args) { //创建 fileReader 对象 Reader fReader = null; Writer writer = null; StringBuffer sbf = new StringBuffer(); try { fReader = new FileReader("D://myDoc//aa.txt"); writer = new FileWriter("D://myDoc//bb.txt"); char ch[] = new char[1024];//创建缓冲区,字符数组。 int length = fReader.read(ch); //将字符读入数组 //循环读取并追加字符 while (length!=-1) { sbf.append(ch);//追加到字符串 length = fReader.read(ch);//改变循环条件 } String wString = sbf.toString().replace("{name}", "哮天犬").replace("{type}", "神犬").replace("{master}", "二郎神");//替换文字 System.out.println(wString); writer.write(wString); writer.flush(); //刷新缓冲区 } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally{ try { fReader.close();//关闭流 writer.close();//关闭 } catch (IOException e) { e.printStackTrace(); } } }

使用 BufferedReader 读文本文件

public static void main(String[] args) { FileReader fReader = null; FileWriter fileWriter = null; BufferedWriter bWriter = null; BufferedReader bReader = null; try { //创建一个FileReader 对象 fReader = new FileReader("D://myDoc//aa.txt"); //创建一个BufferedReader 对象 bReader = new BufferedReader(fReader); //读取一行数据 String lineString = bReader.readLine(); fileWriter = new FileWriter("D://myDoc//bb.txt"); bWriter = new BufferedWriter(fileWriter); StringBuffer sBuffer = new StringBuffer(); while (lineString!=null) { sBuffer.append(lineString); bWriter.write(lineString);//写一行 bWriter.newLine();//换行 lineString = bReader.readLine();//读一行 } bWriter.flush();//清空缓冲区,将数据写出 System.out.println(sBuffer); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally{ try { bReader.close(); fReader.close(); bWriter.close(); fileWriter.close(); } catch (IOException e) { e.printStackTrace(); } } }

DataInputStream演示

public static void main(String[] args) { DataInputStream dis = null; DataOutputStream out =null; try { //创建输出流对象 FileInputStream fis = new FileInputStream("D://myDoc//FileCopy.class"); dis = new DataInputStream(fis); //创建输入流对象 FileOutputStream outFile = new FileOutputStream("D://myDoc//temp.class"); out = new DataOutputStream(outFile); int temp; //读取文件并写入文件 while ( (temp = dis.read()) != -1) { out.write(temp); } }catch (IOException ioe) { ioe.printStackTrace(); }finally{ try{ if(dis!=null) dis.close(); if(out!=null) out.close(); }catch(IOException ex){ ex.printStackTrace(); } } }

以上是java当中针对文件读写进行操作,所需要用到的常用类。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表