2016/1/27 1, File 创建 删除 改名 换路径 2,输出流 不覆盖 换行输入 3,输入流
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2016/1/27 1, File 创建 删除 改名 换路径 2,输出流 不覆盖 换行输入 3,输入流相关的知识,希望对你有一定的参考价值。
1, File 创建 删除 改名 换路径
1 package Stream; 2 3 import java.io.File; 4 5 import java.io.IOException; 6 7 public class OutIn { 8 9 /** 10 * 输入输出 11 */ 12 public static void main(String[] args) { 13 File f1 = new File("d:/book.txt"); // 第一种 实例化文件名称 转义序列无效(有效值为 \b \t \n 14 // \f \r \" \‘ \\) 15 // File f1=new File("d:/","book.txt"); //第二种文件路径和文件名写法 16 if (f1.exists()) { // 判断是否存在 17 System.out.println("文件已经存在"); 18 // f1.delete(); // 文件如果存在 可以做删除处理 19 } else { 20 try { 21 f1.createNewFile(); // 不存在 创建文件 22 } catch (IOException e) { 23 // TODO 自动生成的 catch 块 24 e.printStackTrace(); 25 } 26 f1.renameTo(new File("c:/buk.txt")); // 文件已存在的情况下 可以改文件名和文件路径 27 } 28 29 } 30 }
2,输出流 不覆盖 换行输入
1 package Stream; 2 3 import java.io.File; 4 import java.io.FileNotFoundException; 5 import java.io.FileOutputStream; 6 import java.io.IOException; 7 8 public class OutIn1 { 9 10 11 public static void main(String[] args) { 12 File ff=new File("d:/book.txt");//d盘存在book.txt的前提下 输出流 13 14 FileOutputStream shuchu=null; //防止下面finally中shuchu无法识别 初始化放到try外面 15 try { 16 17 // shuchu=new FileOutputStream(ff);//第一种输出写法 覆盖写入 实例化 二进制流 18 shuchu=new FileOutputStream(ff,true);//第二种输出写法 追加写入 参数多个布尔参数 19 20 String mm="猴年大吉\n"; //建立字符串 换行输入加\n 21 byte[]b=mm.getBytes(); //通过字符串.getBytes()方法 传给数组b 22 try { 23 shuchu.write(b); //数组b内容 传到d:/book.txt 中 完成写入 24 25 26 } catch (IOException e) { 27 // TODO 自动生成的 catch 块 28 e.printStackTrace(); 29 } 30 } catch (FileNotFoundException e) { 31 // TODO 自动生成的 catch 块 32 e.printStackTrace(); 33 } 34 finally{ //try catch finally 捕获异常结构 保证程序即使前面有异常也可以对这一输出流进行关闭 35 try { 36 shuchu.close();//输出完成要关闭一下 不然输出流一直独占这个文件 别的线程是无法操作这个文件的 37 } catch (IOException e) { 38 // TODO 自动生成的 catch 块 39 e.printStackTrace(); 40 } 41 } 42 43 } 44 45 }
3,输入流
1 package Stream; 2 3 import java.io.File; 4 import java.io.FileInputStream; 5 import java.io.FileNotFoundException; 6 import java.io.FileOutputStream; 7 import java.io.IOException; 8 9 public class OutIn2 { 10 11 12 public static void main(String[] args) throws FileNotFoundException { 13 File ff=new File("d:/book.txt");//确定文件存在 用ff.exists()验证是否存在 14 FileInputStream f2=new FileInputStream(ff); //存在的情况下 需要抛出异常 15 //FileInputStream f2=new FileInputStream("d:/book.txt");//第二种写法 可以省略File实例化过程 16 byte[]c=new byte[1024];//无法事先知道数组多大 1024是个估计值 17 //为了下面能够读取 先构建一个空数组 18 try { 19 20 int chang=f2.read(c); //读取数组c 返回长度 21 String s=new String(c,0,chang);//读取的内容转化为字符串 方法名加横线表示废弃方法 22 //从读的方法中获取长度 转字符时 通过对长度的控制 对1024多的去掉 表现为字符串后面空白处无光标 23 System.out.println("文本中的内容:"+s);//输入 读到的内容 24 } catch (IOException e) { 25 // TODO 自动生成的 catch 块 26 e.printStackTrace(); 27 } 28 finally{ 29 try { 30 f2.close(); //注意对流的关闭动作 不然一旦前面出错,其他线程无法操作这个文件 31 } catch (IOException e) { 32 // TODO 自动生成的 catch 块 33 e.printStackTrace(); 34 } 35 } 36 } 37 38 }
以上是关于2016/1/27 1, File 创建 删除 改名 换路径 2,输出流 不覆盖 换行输入 3,输入流的主要内容,如果未能解决你的问题,请参考以下文章
PHP里面put_file_contents如何在指定文件夹里创建文件?