最近在研究IO
import java.io.File;
import java.io.IOException; public class Demo11_1 { public static void main(String[] args) {
//创建一个文件对象
//File f = new File("d:\\123.txt"); //得到文件的路劲
//System.out.println("文件路径:"+f.getAbsolutePath());
//得到文件的大小
//System.out.println("文件大小"+f.length());
//System.out.println("可读"+f.canRead()); //创建文件和创建文件夹
//File f = new File("d:\\zy.txt");
//if(!f.exists()){
//可以创建
// try {
// f.createNewFile(); // } catch (IOException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
// }
//}else{
// System.out.println("已存在");
//} //File f = new File("d:\\ff\\zy.txt");
//if(f.isDirectory()){
// System.out.println("文件夹存在");
//}else{
// //创建
// f.mkdir();
//} //列出一个文件夹下面的所有文件
//File f = new File("d:\\ff");
//if(f.isDirectory()){
// File lists[] = f.listFiles();
// for(int i=0;i<lists.length;i++){
// System.out.println("文件名:"+lists[i].getName());
// }
//} //测试在文件加下创建文件,并判断文件夹是否存在
File f = new File("d:\\zy");
if(f.exists()){
System.out.println("文件夹存在"); }else{
f.mkdir();
}
File fn = new File("d:\\zy\\zy.txt");
if(fn.exists()){
System.out.println("文件已存在");
}else{
System.out.println("文件不存在,创建文件");
try {
fn.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException; /**
* 演示FileInputStream类的使用
* @author zy
*
*/
public class Demo11_2 {
public static void main(String[] args) throws IOException { File f = new File("d:\\123.txt");
FileInputStream fis=null;
try {
fis = new FileInputStream(f);
//定义一个字节数组
byte[] bytes = new byte[1024];
int n=0;
//读取结束返回-1
while((n=fis.read(bytes))!=-1){
//把字节转换成string
String s = new String(bytes,0,n);
System.out.println(s);
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//关闭文件流
fis.close(); } } }
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException; /**
* 演示FileOutputStream的使用
* @author zy
*
*/
public class Demo11_3 { public static void main(String[] args) { File f = new File("d:\\test.txt");
//判断文件是否存在
if(!f.exists()){
try {
f.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//字节输出
FileOutputStream fos = null;
try {
fos = new FileOutputStream(f); String s = "小灰灰\r\n";
String sa = "喜洋洋";
//定义数组
//byte [] bytes=new byte[1024];
//把string转换成bytes数组 fos.write(s.getBytes());
fos.write(sa.getBytes());
} catch (Exception e) {
// TODO: handle exception
}finally{
try {
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream; public class Demo12_4 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub //先把图片读入到内存--》写入到某个文件
//因为是二进制文件,因此只能用字节流完成
//输入流
//File f1=new File("E:\\1.jpg");
FileInputStream fis=null;
//输出流
FileOutputStream fos=null;
try {
fis=new FileInputStream("e:\\1.jpg");
fos=new FileOutputStream("f:\\1.jpg");
byte buf[]=new byte[512];
int n=0;//记录实际读取到的字节数
//循环读取
while((n=fis.read(buf))!=-1){
//输出到指定文件
fos.write(buf);
} } catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
}finally{
//关闭打开的文件流
try {
fis.close();
fos.close();
} catch (Exception e2) {
// TODO: handle exception
}
}
} }
import java.io.FileReader;
import java.io.FileWriter; public class Demo12_5 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub //文件取出字符流对象(输入流)
FileReader fr=null;
//写入到文件(输出流)
FileWriter fw=null; try {
//创建fr对象
fr=new FileReader("e:\\test.txt");
//创建输出对象
fw=new FileWriter("f:\\test.txt");
int n=0;//记录实际读取的字符数
//读入到内存
char c[]=new char[1024];
while((n=fr.read(c))!=-1){
//String s=new String(c,0,n);//避免乱码
//System.out.println(s);
fw.write(c);
}
} catch (Exception e) {
// TODO: handle exception
}finally{
try {
fr.close();
fw.close();
} catch (Exception e2) {
// TODO: handle exception
}
}
} }
public class Demo12_6 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub BufferedReader br=null;
BufferedWriter bw=null;
try {
//先创建FileReder对象
FileReader fr=new FileReader("e:\\test.txt");
br=new BufferedReader(fr); //创建FileWrite对象
FileWriter fw=new FileWriter("f:\\test.txt");
bw=new BufferedWriter(fw);
//循环读取文件
String s="";
while((s=br.readLine())!=null)
{
//System.out.println(s);
//输出到磁盘
bw.write(s+"\r\n");
}
} catch (Exception e) {
// TODO: handle exception
}finally{
try {
br.close();
bw.close();
} catch (Exception e2) {
// TODO: handle exception
}
}
} }
最近在研究IO的更多相关文章
- Java IO(1)基础知识——字节与字符
正所谓怕什么来什么,这是知名的“墨菲定律”.Java基础涵盖各个方面,敢说Java基础扎实的人不是刚毕业的学生,就是工作N年的程序员.工作N年的程序员甚至也不敢人人都说Java基础扎实,甚至精通,往往 ...
- 利用BLKTRACE分析IO性能
在Linux系统上,如果I/O发生性能问题,有没有办法进一步定位故障位置呢?iostat等最常用的工具肯定是指望不上的,[容易被误读的iostat]一文中解释过await表示单个I/O所需的平均时间, ...
- 图解 Java IO : 一、File源码
Writer :BYSocket(泥沙砖瓦浆木匠) 微 博:BYSocket 豆 瓣:BYSocket FaceBook:BYSocket Twitter ...
- [转] 利用BLKTRACE分析IO性能
在Linux系统上,如果I/O发生性能问题,有没有办法进一步定位故障位置呢?iostat等最常用的工具肯定是指望不上的,[容易被误读的iostat]一文中解释过await表示单个I/O所需的平均时间, ...
- blktrace分析IO
http://bean-li.github.io/blktrace-to-report/ 前言 上篇博客介绍了iostat的一些输出,这篇介绍blktrace这个神器.上一节介绍iostat的时候,我 ...
- RAID中条带的概念
raid把数据分成条带,一个条带横跨所有数据磁盘,每个磁盘上存储条带的一部分,称为sagment,也称为条带深度.一个条带包含的扇区或块的个数,称为条带长度. raid向操作系统提供的是卷,是连续的扇 ...
- oracle AWR详解
原文地址:https://blog.csdn.net/elvis_lfc/article/details/52326148 啥是AWR? =============================== ...
- VS2015编译GEOS
下载链接:http://trac.osgeo.org/geos/ 1. 打开cmake,加载geos源码和定位geos的工程存放位置: 2.点击configure,会报错,首先设置CMAKE_INST ...
- Java IO流关闭问题的深入研究
转自:https://blog.csdn.net/maxwell_nc/article/details/49151005 前几天看了一篇文章(见参考文章),自己动手试了下,发现有些不一样结论,作博客记 ...
随机推荐
- 推荐一个好用的免费开源的笔记本软件CherryTree
我是一个好奇心很强的人,对未知的事物总有一种想要追根究底的冲动.多年以来,我学了很多东西,也学的很杂,积累了很多领域的知识.但不得不承认,人的记忆力很有限,学的越多忘的就越多.很久以前我就在想,怎么样 ...
- du 和 df命令
测试环境数据库收到磁盘报警时,需要清理部分磁盘空间 df -h 查看整个磁盘占有 找到对应目录 查看每个文件夹占有磁盘量: sudo du -h --max-depth=1 data/ --max-d ...
- 《鸟哥的Linux私房菜:服务器搭建篇》第一部分学习笔记
零.问题集 1. 我们购买网络时,有4M.5M.8M.10M乃至100M,运营商是如何控制每个用户的带宽的? 一.网络基础概念 1. 交换器与集线器最大的差异,在于交换器内有一个特别的内存, 这个内存 ...
- [转帖]POWER ISA开源 浪潮商用机器加速POWER技术生态建设步伐
POWER ISA开源 浪潮商用机器加速POWER技术生态建设步伐 [原创] 2019-08-26 18:51:04 关键字: 开源 Power 浪潮商用机器 http://server.zhid ...
- 注意了,Mybatis中条件判断时遇到的坑
1.mapper中比较字符串时需要注意的问题如下: mybatis 映射文件中,if标签判断字符串相等,两种方式:因为mybatis映射文件,是使用的ognl表达式,所以在判断字符串isComplet ...
- 和HTTP相关的web服务器内容
一台web服务器可以搭建多个独立域名的网站,也可以作为通信路径上的中转服务器提升传输效率. 1. 用单台虚拟主机实现多个域名 多个域名解析后对应的ip地址相同,需要在Host首部中包含完整的主机名或者 ...
- (六)Spring 中的 JdbcTemplate
目录 概念 配置数据库 创建 JdbcTemplate 对象 增删改查代码 概念 JdbcTemplate : 是 Spring 中对持久层(JDBC 技术)一个封装 : 使用起来和 Dbutuis ...
- Python基础(十一)--内置函数
内置函数 数学类 abs():绝对值 round():四舍五入 >>> round(1.3747,1) 1.4 sum():求和 >>> sum({1:'dj',2 ...
- ts转js 并压缩
1,在线编译,进入typescript官网http://www.typescriptlang.org/,点击里面的playground就可以直接写代码了. 2,在本地编译运行Typescript需要使 ...
- css流程图
图片链接:https://mp.processon.com/view/link/5da65435e4b0ea86c2b1fb05 之前是图片链接是有点问题,不知道什么原因被删除了,现在已经更新了,如 ...