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.为用户添 ...
随机推荐
- 修改mysql数据默认存储路径
1:停止mysql服务 2:找到配置文件路径 C:\ProgramData\MySQL\MySQL Server 5.6\my.ini 3:修改属性datadir 1.将C:/ProgramData/ ...
- hdfs深入:05、hdfs中的fsimage和edits的合并过程
6.4.secondarynameNode如何辅助管理FSImage与Edits文件 ①:secnonaryNN通知NameNode切换editlog ②:secondaryNN从NameNode中获 ...
- Android之多种Bitmap效果(4)
1. 将图片变为圆角 2. 获取缩略图图片 3. LOMO特效 4. 旧时光特效 5. 暖意特效 6. 根据饱和度.色相.亮度调整图片 7. 添加图片外边框 8. 添加内边框 9. 创建一个缩放的图片 ...
- Bullet:MySQL增强半同步参数rpl_semi_sync_master_wait_point值AFTER_SYNC和AFTER_COMMIT的对比实验
MySQL 5.7.22启用增强半同步复制 MySQL对该参数值的描述 Semisync can wait for slave ACKs at one of two points, AFTER_SYN ...
- 初识Typescript及vscode环境配置
什么是typescript?为什么要用它? typescript简称ts,是js语法的一个超级,由微软团队维护的 js特点(不足) 弱类型:js中的数据变量没有确定的类型,可以存储对象,可以存储数字, ...
- HDFS的Java API 对文件的操作
在本次操作中所用到的命令 1.首先启动HDFS $HADOOP_HOME/sbin/start-dfs.sh 2.关防火墙 切换到root用户,执行service iptables stop 3.拷贝 ...
- UVA 1589 象棋
题意: 给出一个黑方的将, 然后 红方有 2 ~ 7 个棋子, 给出摆放位置,问是否已经把黑将将死, 红方已经将军. 分析: 分情况处理, 车 马 炮, 红将情况跟车是一样的. 建一个数组board保 ...
- Directory获取方式
1) FSDirectory.open FSDirectory.open()会以最合适的方式来获取一个Directory对象. 2) RAMDirectory 可以将磁盘中的索引加载到内存中,访问速度 ...
- git-github 提示Permission denied (publickey) (windows)
这种绝大多数情况是由于公钥设置的问题. 1.生成公钥 参考地址:https://help.github.com/articles/generating-a-new-ssh-key-and-adding ...
- windows资源监控常用计数器解释
随笔有些是自己写的,有些是根据网上的东西自己整理的,文章基本都是别人的,只是为方便查看复制到那里