2016/1/27 1, File 创建 删除 改名 换路径 2,输出流 不覆盖 换行输入 3,输入流
1, File 创建 删除 改名 换路径
package Stream;
import java.io.File;
import java.io.IOException;
public class OutIn {
/**
* 输入输出
*/
public static void main(String[] args) {
File f1 = new File("d:/book.txt"); // 第一种 实例化文件名称 转义序列无效(有效值为 \b \t \n
// \f \r \" \' \\)
// File f1=new File("d:/","book.txt"); //第二种文件路径和文件名写法
if (f1.exists()) { // 判断是否存在
System.out.println("文件已经存在");
// f1.delete(); // 文件如果存在 可以做删除处理
} else {
try {
f1.createNewFile(); // 不存在 创建文件
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
f1.renameTo(new File("c:/buk.txt")); // 文件已存在的情况下 可以改文件名和文件路径
}
}
}
2,输出流 不覆盖 换行输入
package Stream; import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; public class OutIn1 { public static void main(String[] args) {
File ff=new File("d:/book.txt");//d盘存在book.txt的前提下 输出流 FileOutputStream shuchu=null; //防止下面finally中shuchu无法识别 初始化放到try外面
15 try { // shuchu=new FileOutputStream(ff);//第一种输出写法 覆盖写入 实例化 二进制流
shuchu=new FileOutputStream(ff,true);//第二种输出写法 追加写入 参数多个布尔参数 String mm="猴年大吉\n"; //建立字符串 换行输入加\n
byte[]b=mm.getBytes(); //通过字符串.getBytes()方法 传给数组b
try {
shuchu.write(b); //数组b内容 传到d:/book.txt 中 完成写入 } catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
} catch (FileNotFoundException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally{ //try catch finally 捕获异常结构 保证程序即使前面有异常也可以对这一输出流进行关闭
try {
shuchu.close();//输出完成要关闭一下 不然输出流一直独占这个文件 别的线程是无法操作这个文件的
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
} } }
3,输入流
package Stream; import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; public class OutIn2 { public static void main(String[] args) throws FileNotFoundException {
File ff=new File("d:/book.txt");//确定文件存在 用ff.exists()验证是否存在
FileInputStream f2=new FileInputStream(ff); //存在的情况下 需要抛出异常
//FileInputStream f2=new FileInputStream("d:/book.txt");//第二种写法 可以省略File实例化过程
byte[]c=new byte[1024];//无法事先知道数组多大 1024是个估计值
//为了下面能够读取 先构建一个空数组
try { int chang=f2.read(c); //读取数组c 返回长度
String s=new String(c,0,chang);//读取的内容转化为字符串 方法名加横线表示废弃方法
//从读的方法中获取长度 转字符时 通过对长度的控制 对1024多的去掉 表现为字符串后面空白处无光标
System.out.println("文本中的内容:"+s);//输入 读到的内容
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
finally{
try {
f2.close(); //注意对流的关闭动作 不然一旦前面出错,其他线程无法操作这个文件
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
} }


2016/1/27 1, File 创建 删除 改名 换路径 2,输出流 不覆盖 换行输入 3,输入流的更多相关文章
- File 创建一个空目录,创建一个多级目录,删除一个目录
package seday03; import java.io.File; /** * 创建一个空目录,* @author xingsir*/public class MkDirDemo { publ ...
- File类创建删除功能的方法和File类遍历(文件夹)目录功能
File类创建删除功能的方法 -public boolean createNewFile():当且仅当具有该名称的文件尚不存在时,创建一个新的空文件 -public boolean delete(): ...
- File类创建删除功能的方法和File类遍历目录功能
File类创建删除功能的方法 public boolean createNewFile();当且仅当具有该名称的文件尚不存在的时候,创建一个新的空文件 public boolean delete(); ...
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_01 File类_7_File类创建删除功能的方法
createNewFile() createNewFile抛出了异常 抛出了一个IO异常 所有我们调用方法的时候必须处理异常 throws这个异常 返回结果为true 最终创建好的文件 再次执行代码. ...
- hdfs创建删除文件和文件夹
在 hadoop 中,基于 Linux 命令可以给 hdfs 创建文件和文件夹,或者删除文件和文件夹 创建文件的命令为: hadoop fs -touch /file.txt 创建文件夹的命令为: h ...
- FILE文件删除操作(删除指定文件夹下所有文件和文件夹包括子文件夹下所有文件和文件夹),就是删除所有
2018-11-05 19:42:08开始写 选择 删除 1.FileUtils.java类 import java.io.File;//导入包 import java.util.List;//导入 ...
- java基础 File 递归删除文件夹中所有文件文件夹 目录(包含子目录)下的.java文件复制到e:/abc文件夹中, 并统计java文件的个数
File 递归删除文件夹中所有文件文件夹 package com.swift.kuozhan; import java.io.File; import java.util.Scanner; /*键盘录 ...
- Oracle 删除用户和表空间////Oracle创建删除用户、角色、表空间、导入导出、...命令总结/////Oracle数据库创建表空间及为用户指定表空间
Oracle 使用时间长了, 新增了许多user 和tablespace. 需要清理一下 对于单个user和tablespace 来说, 可以使用如下命令来完成. 步骤一: 删除user drop ...
- Day 10 用户的提权,用户组的创建删除
1.如何为用户设定密码,又如何修改密码? 2.用户的创建流程? [扩展了解] 3.用户组如何管理? 4.普通用户无权限怎么办? 切换身份 or 提权? su 切换用户 sudo 提权 5.为用户添 ...
随机推荐
- VS调试debug的即时窗口的使用
例:
- PHP 下基于 php-amqp 扩展的 RabbitMQ 简单用例 (三) -- Header Exchange
此模式下,消息的routing key 和队列的 routing key 会被完全忽略,而是在交换机推送消息和队列绑定交换机时, 分别为消息和队列设置 headers 属性, 通过匹配消息和队列的 h ...
- C#语言中循环分类总结
C#语言中,循环主要分为4种,分别是:while循环.do while循环.for循环.foeach循环.下面我将分类对循环语句总结. 1.while循环: 如果循环条件为真,则执行循环体:执行完循环 ...
- Linux忘记root密码,密码找回,图片展示
忘记root密码 CentOS 7参考地址如下:https://www.baidu.com/s?wd=CentOS7+%E6%89%BE%E5%9B%9Eroot%E5%AF%86%E7%A0%81& ...
- stark组件之显示页面内容搭建(六)
之前主要介绍了前端页面list_fiter功能的显示,但是list_display功能的展示并没有过多介绍,这里介绍一下是如何实现的. 可以看到凡是蓝线圈起来的都是通过字段名反射一个个取出来的,红线的 ...
- Python关于函数作为返回值的理解(3分钟就看完了)
话不多说,直接看例子,上代码: def line_conf(): def line(x): return 2 * x + 1 return line #return a function object ...
- 90-Standard Deviation 标准离差指标.(2015.7.4)
Standard Deviation 标准离差指标 ~计算: StdDev = SQRT (SUM (CLOSE - SMA (CLOSE, N), N)^2)/N 注解: SQRT - 正方体根: ...
- 九度oj 题目1072:有多少不同的面值组合?(set集合)
题目1072:有多少不同的面值组合? 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:3627 解决:1852 题目描述: 某人有8角的邮票5张,1元的邮票4张,1元8角的邮票6张,用这些邮 ...
- CentOS下LVS DR模式负载均衡配置详解
一安装LVS准备: 1.准备4台Centos 6.2 x86_64 注:本实验关闭 SELinux和IPtables防火墙. 管理IP地址 角色 备注 192.168.1.101 LVS主调度器(Ma ...
- 学习使用windows下类似iptables的防火墙软件
项目地址:http://wipfw.sourceforge.net一.下载地址:http://sourceforge.net/projects/wipfw/files/安装:解压软件包后执行insta ...