//文件操作

//2015年4月30日15:40:21

package com.alfredsun.first.main;

import java.io.File;
import java.io.IOException; public class test { public static void main(String[] args)
{
// TODO Auto-generated method stub
File file =new File("hello.txt");
if(file.exists())
{
//file
System.out.println(file.isFile());
//dire
System.out.println(file.isDirectory());
}
else
{
System.out.println("File Not Exist");
try {
file.createNewFile();
System.out.println("File has been created.");
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("FIle can not be creat.");
e.printStackTrace();
} } } }

  

//文件夹创建1-mkdir

//2015年5月2日20:42:28

package com.alfredsun.first.main;

import java.io.File;
import java.io.IOException; public class test { public static void main(String[] args)
{
// TODO Auto-generated method stub
File folder =new File("My New Folder");
folder.mkdir();
System.out.println("Folder Create Success!");
} }

  

//mkdirs

//2015年5月2日20:49:50

package com.alfredsun.first.main;

import java.io.File;
import java.io.IOException; public class test { public static void main(String[] args)
{
// TODO Auto-generated method stub
File folder =new File("My New Folder/one/two/three/main");
if(folder.mkdirs()) //mkdirs
{
System.out.println("Folder Create Success!");
}
else
{
if(folder.exists())
{
System.out.println("The Folder Exist");
}
else
{
System.out.println("Folder Can't been creat");
}
}
} }

  

//文件夹的遍历

/2015年5月2日21:33:12

package com.alfredsun.first.main;

import java.io.File;
import java.io.IOException; public class test { public static void main(String[] args)
{
// TODO Auto-generated method stub
printFiles(new File("."),1); }
public static void printFiles(File dir,int tab)
{
if (dir.isDirectory())
{
File next[] =dir.listFiles();
for(int i=0;i<next.length;i++)
{
for(int j=0;j<tab;j++)
{
System.out.print("|---");
}
if(next[i].isFile())
{
System.out.println(next[i].getName());
}
else
{
printFiles(next[i],tab+1);
}
}
}
} }

  

|---.classpath
|---.project
|---|---|---org.eclipse.jdt.core.prefs
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---test.class
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---readme.txt
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---test.java

  

//文件读取

//2015年5月2日21:51:43

package com.alfredsun.first.main;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException; public class test { public static void main(String[] args)
{
// TODO Auto-generated method stub
File file =new File("readme.txt");
if(file.exists())
{
System.err.println("File is Exist.");
}
try
{
FileInputStream fis =new FileInputStream(file);
InputStreamReader isr=new InputStreamReader(fis,"UTF-8");
BufferedReader br =new BufferedReader(isr); String line;
while((line = br.readLine())!=null)
{
System.out.println(line);
}
br.close();
isr.close();
fis.close(); }
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} } }

  

//字节流读写数据,byte[]可能读取到半个汉字

//2015年5月3日16:36:28

package com.alfredsun.first.main;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException; public class test { public static void main(String[] args)
{
// TODO Auto-generated method stub
try {
FileInputStream fis =new FileInputStream("readme.txt");
byte[] input =new byte [20];
fis.read(input);
String inputString =new String(input);
System.out.println(inputString);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
}

  

//文件流写入

//2015年5月3日21:02:37

package com.alfredsun.first.main;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException; public class test { public static void main(String[] args)
{
// TODO Auto-generated method stub
FileOutputStream fos;
try {
fos = new FileOutputStream("readme.txt");
String outString ="write 123456";
byte[] output =outString.getBytes("UTF-8");
fos.write(output);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
}

  

//使用输入流输出流复制文件

//大文件惨不忍睹,150M大概要2分钟,不过文件无错误,不知道缓存有何用

//2015年5月4日20:13:37

package com.alfredsun.first.main;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; public class test { public static void main(String[] args)
{
try {
FileInputStream fis= new FileInputStream("1.jpg");
FileOutputStream fos=new FileOutputStream("1.1.jpg");
byte input[] =new byte[50]; //每次读取字节 //有差异112-150 应该是操作系统的问题
while (fis.read(input)!=-1) { //返回一个boolean表-完成与否
fos.write(input); } fis.close();
fos.close();
System.out.println("Done"); } catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

  

//带有缓存的输入输出流

//速度飞快,考虑实际的文件大小来确定缓冲区和数组大小

//2015年5月4日20:52:36

package com.alfredsun.first.main;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; public class test { public static void main(String[] args)
{
try {
FileInputStream fis= new FileInputStream("1.jpg");
BufferedInputStream bis= new BufferedInputStream(fis,1000000);
FileOutputStream fos=new FileOutputStream("1.1.jpg");
BufferedOutputStream bos=new BufferedOutputStream(fos,1000000);
int count =0;
byte input[] =new byte[100000]; //每次读取字节 //有差异112-150 应该是操作系统的问题
while (bis.read(input)!=-1) { //返回一个boolean表-完成与否
bos.write(input);
count++;
} bis.close();
fis.close();
System.out.println("Read "+count +" Times");
bos.close();
fos.close();
System.out.println("Done"); } catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

  

Java学习笔记-File的更多相关文章

  1. Java学习笔记——File类之文件管理和读写操作、下载图片

    Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图 ...

  2. Java学习笔记-File类的基本方法

    要渐渐养成写博客的习惯-----> 前段时间看Mars的java中的I/O流没怎么懂,发现I/O流好难啊.今天重新看一遍其他教学,还有书籍,做些笔记,记录下每天的学习生活. File类的一些方法 ...

  3. Java学习笔记——File类文件管理及IO读写、复制操作

    File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图片 文件和文件夹 相关函数  (boolean) mkdir( ...

  4. 0032 Java学习笔记-类加载机制-初步

    JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...

  5. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  6. 20145330第六周《Java学习笔记》

    20145330第六周<Java学习笔记> . 这周算是很忙碌的一周.因为第六周陆续很多实验都开始进行,开始要准备和预习的科目日渐增多,对Java分配的时间不知不觉就减少了,然而第十和十一 ...

  7. Java学习笔记4

    Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...

  8. Java学习笔记31(IO:Properties类)

    Properties类,表示一个持久的j集,可以存在流中,或者从流中加载 是Hashtable的子类 map集合的方法都能用 用途之一:在开发项目中,我们最后交给客户的是一个编译过的class文件,客 ...

  9. 20155234 2016-2017-2第十周《Java学习笔记》学习总结

    20155234第十周<Java学习笔记>学习总结 教材学习内容总结 网络编程 在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定 ...

随机推荐

  1. 逐步在Windows上结合CopSSH + msysGit安装安装Git Server同时集成Git使用Visual Studio

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  2. 用Python复习离散数学(一)

    最近要复习离散数学,不想挂啊,但是又想编程,大家知道啦,程序员离不开代码啊,所用想边复习边写代码,所以就自己用代码去实现一下离散的知识点,当做复习,自知自己的Python很渣,也想借此巩固一下基础,哈 ...

  3. tornado\ioloop.py单例

    @staticmethod def instance(): """Returns a global `IOLoop` instance. Most application ...

  4. 鸟哥的LINUX私房菜基础篇第三版 阅读笔记 三 Linux磁盘与文件系统管理

    一.认识EXT2文件系统:     a.硬盘的组成:转动小马达+存储的磁盘+读写的机械臂     b.磁盘的一些概念              扇区为最小的物理储存单位,每个扇区为512B       ...

  5. Combo模糊匹配中文问题

    茗洋Easy UI 1.3.2 部分问题解决系列专题[Combo模糊匹配中文问题 修复] 本次给大家带来的EasyUI的我研究拓展的新特性 我使用的是  EasyUI 1.3.2版本的,项目是ASP. ...

  6. linux下面安装配置mongoDB

    不知道为什么官网最新的2.4我一直解压失败 下载之前确认一下你的操作系统是64位的还是32位的对应去下载 64位链接:http://fastdl.mongodb.org/linux/mongodb-l ...

  7. C# 对象池的实现

    C# 对象池的实现 对象池服务可以减少从头创建每个对象的系统开销.在激活对象时,它从池中提取.在停用对象时,它放回池中,等待下一个请求.我们来看下主线程中,如何与对象池打交道: static void ...

  8. 用T4消除代码重复,对了,也错了

    用T4消除代码重复,对了,也错了 背景 我需要为int.long.float等这些数值类型写一些扩展方法,但是我发现他们不是一个继承体系,我的第一个思维就是需要为每个类型重复写一遍扩展方法,这让我觉得 ...

  9. PHP生成缩略图函数

    function img_create_small($big_img, $width, $height, $small_img) { // 大图文件地址,缩略宽,缩略高,小图地址$imgage = g ...

  10. C/C++ 内存对齐

    一.什么是对齐,以及为什么要对齐: 1. 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问, ...