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.为用户添 ...
随机推荐
- ubuntu 18.04 安装.net core
要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系那就只好在琢磨了,然后就发现了在github有安装的方法因为是18.04 所以 wget -qO- https://packages.micro ...
- 德尔福 XE5 安卓权限设置
http://delphi.org/2013/10/delphi-xe5-android-uses-permissions/ The permissions required by a Delphi ...
- C++获取本机用于连接的IP地址
最近写个程序需要获取本机用于连接的IP地址,经过很多的尝试后,最终使用的方法如下: 使用cmd命令 netstat | findstr “192.168.6.66:3333” > D:\ ...
- java中引用对比C++指针
前置知识地址:https://blog.csdn.net/wangfei8348/article/details/51383805 重点在后面的引用对比实验(测试出内存地址,我很开心哈哈哈,客观给个好 ...
- BZOJ1001 狼抓兔子 平面图转对偶图 最小割
现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的,而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形: 左上角点为 ...
- <Linux> 下安装和卸载JDK
安装 下载jdk https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 在local ...
- win10 专业版 安装tornado 的步骤
win10 专业版 安装tornado 的步骤: 1.下载tornado源码压缩包 下载网址:https://github.com/tornadoweb/tornado 若是没有github 账号可以 ...
- python 连接sqlserver: pymssql
停了一个月,终于还是把这个做了,工作需要!!!在装pymssql时,一直报错,确定了要先装freetds: 1. 安装freetds时报错,搜索到要先进行如下操作: brew unlink freet ...
- os系统下安装Python2和Python3
一.下载Xcode工具 1.在App Store 里面下载并安装Xcode 2.安装好Xcode后就打开它,首次进入会有一些LicenceAgreement,点同意就是了,然后就进入到 这个界面: 3 ...
- centos7安装mysql5.7.19及配置远程连接
centos7安装mysql5.7.19及配置远程连接------https://blog.csdn.net/Lh19931122/article/details/77996213