//文件操作

//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. EF 关系描述

    网络上常常看到有ef 1对1 1对多等关系的描述,按照我的理解,其根本就是为了呈现出一个视图,我最近设计了一个ef关系,请大家看一看. 需求描述 在gps车辆信息管理中,有个开户需求,其根本就是三种关 ...

  2. C# 6.0 功能预览

    C# 6.0 功能预览 (一) 一.索引的成员和元素初始化 1.1 原始初始化集合 Dictionary 1.2 键值初始化集合 Dictionary 1.3 运算符 $ 初始化集合 Dictiona ...

  3. 测试驱动 ASP.NET MVC 和构建可测试 ASP.NET MVC 应用程序

    [测试驱动 ASP.NET MVC] http://t.cn/8kdi4Wl [构建可测试 ASP.NET MVC 应用程序]http://t.cn/8kdi4Wj

  4. Vi编辑器入门

    Vi编辑器入门   vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows上的记事本! 1.vi的基本概念  基本上vi可以分为三种状态,分别是命令模式(command mode ...

  5. angular 实战系列 之 mvvm模式

    什么是MVVM模式 mvvm模式是mvc模式的一种变体,其中第一个m表示model,可以认为是数据对象的抽象,v代表view,vm代表view model ,是对view中的数据抽象(注1).mvvm ...

  6. boost 1.49在vs 2005下编译的方法

    首先下载boost库,网上自己搜索. 然后解压到一个目录:如D:\boost_1_49_0.然打开vs2005的命令提示符,进行D:\boost_1_49_0目录: 1.运行bootstrap.bat ...

  7. Ext.ux.form.SuperBoxSelect

    Ext.ux.form.SuperBoxSelect 在B/S系统中,下拉列表(select/dropdownlist/combobox)的应用随处可见,为了增强用户体验,开发人员也常常会做一些带联想 ...

  8. Android 手机进入不了fastboot模式的解决方案

    本方案仅针对linux terminal下刷手机img文件的情况: fastboot的通常流程如下:   adb reboot bootloader  //进入bootloader 模式  fastb ...

  9. Complexity Behind Closure

    这篇文章同时发布在github上 这篇文章是我对ooc编译器里一个小bug调试时作的手记.虽然相信大多数人对编译器(并且是一门小众语言的编译器)并不感兴趣,但这篇文章可以给C用户们提供一些Object ...

  10. phpredis扩展

    <?php $redis = new Redis(); $redis->connect('127.0.0.1',6379); $redis->set('test','hello wo ...