java 学习笔记之 流、文件的操作
ava 学习笔记之 流、文件的操作
对于一些基础的知识,这里不再过多的解释,
简单的文件查询过滤操作
package com.wfu.ch08;
import java.io.File;
import java.io.FilenameFilter;
public class Test1 {
public static void main(String[] args) {
File file=new File("F:\\2017-2018-1\\javase");
// //获取该目录下,所有的文件或目录的名字组成的字符串数组
// String[] list=file.list();
// //遍历list
// for(String str:list){
// System.out.println(str);
// }
// File[] list=file.listFiles();
// //遍历文件数组list
// for(File f:list){
// if(f.isDirectory()){
// System.out.println("目录:"+f.getName());
// }
// else{
// System.out.println("文件:"+f.getName());
// }
// }
//引用外部类实现过滤器功能
MyFilter filter=new MyFilter();
String[] list=file.list(filter);
for(String str:list)
{
System.out.println(str);
}
// File file=new File("d:\\test.txt");
// System.out.println("是目录吗?"+file.isDirectory());
// System.out.println("文件大小"+file.length());
// System.out.println("文件名:"+file.getName());
// System.out.println("文件路径"+file.getPath());
// Date date=new Date(file.lastModified());
// System.out.println("最后修改时间为:"+date);
// System.out.println("是文件吗?"+file.isFile());
}
}
//外部类实现过滤,因为FilenameFilter 是没有实现类的,所以只好我们自己写啦
class MyFilter implements FilenameFilter{
@Override
public boolean accept(File dr, String name) {
// TODO Auto-generated method stub
if(name.endsWith(".doc")||name.endsWith(".docx")){
return true;
}
else{
return false;
}
}
}
内部类举例
package com.wfu.ch08;
import java.io.File;
import java.io.FilenameFilter;
public class Test2 {
public static void main(String[] args) {
File file=new File("F:\\2017-2018-1\\javase");
Test2 t=new Test2();
Test2.MyFilter filter=t.new MyFilter();
String[] list=file.list(filter);
for(String s:list){
System.out.println(s);
}
}
//这个类写在了类 Test2 中,所以是内部类,在调用内部类是一定要声明对象啊啊啊啊啊
class MyFilter implements FilenameFilter{
@Override
public boolean accept(File arg0, String arg1) {
// TODO Auto-generated method stub
if(arg1.endsWith(".doc")||arg1.endsWith(".docx")){
return true;
}
else{
return false;
}
}
}
}
匿名类举例
package com.wfu.ch08;
import java.io.File;
import java.io.FilenameFilter;
public class Test3 {
public static void main(String[] args) {
File file=new File("F:\\2017-2018-1\\javase");
//这里的没有写类的名字,而是直接写的实现方法,这样就是匿名的内部类
String[] list=file.list(new FilenameFilter(){//这个地方本来是不能直接使用接口的,但是,因为下面的实现类也写上了,所也这里实质山是调用的实现类,而不是接口
@Override
public boolean accept(File arg0, String arg1) {
// TODO Auto-generated method stub
if(arg1.endsWith(".doc")||arg1.endsWith(".docx")){
return true;
}
else{
return false;
}
}
});
for(String s:list){
System.out.println(s);
}
}
}
流、文件的操作简单举例
package wfu;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class Test3 {
public static void main(String[] args) throws IOException {
FileOutputStream out = new FileOutputStream("d:\\test2.txt");
String str = "This is a bug";
out.write(str.getBytes());//写入字符数组
//out.close();
FileInputStream input = new FileInputStream("d:\\test2.txt");
byte[] b = new byte[1024];
input.read(b);
System.out.println(new String(b));
//input.close();
FileOutputStream outto = new FileOutputStream("f:\\test2.txt");
out.write(str.getBytes());
out.close();
//
// //利用字节流的话会出现中文乱码
// //所以说如果有中文的话还是用字符流比较好
// FileInputStream input = new FileInputStream("d:\\test.txt");
// int x = input.read();
// do{
// System.out.print((char)x);
// x= input.read();
// }while(x!=-1);
// //关闭流
// input.close();
//
// //创建文件字节输入流
// InputStream input = new FileInputStream("d:\\test.txt");
//
// //在输入流中读数据
// byte[] b = new byte[1024];
// input.read(b);
// System.out.println(new String(b));//转换成字符串
// //关闭
// input.close();
// //创建文件输出流
// OutputStream out = new FileOutputStream("d:\\test1.txt");//文件不存在就自动创建一个,如果有的话,就执行此文件
// out.write(b);
// out.close();
}
}
java 学习笔记之 流、文件的操作的更多相关文章
- Java 学习笔记 IO流与File操作
可能你只想简单的使用,暂时不想了解太多的知识,那么请看这里,了解一下如何读文件,写文件 读文件示例代码 File file = new File("D:\\test\\t.txt" ...
- Beego 学习笔记12:文件的操作
文件的操作 1> 此事例操作的是text文件 2> 文件的操作有读取text内容,将内容写入到文件中,删除文件,创建文件 3> 新建一个控制器,名为rwfil ...
- Java学习笔记--字符串和文件IO
1.Java中的字符串类和字符的表示 2.区分String,StringBuilder和StringBuffer 3.从命令行中给main方法传递参数 4.文件操作 1 Java中的字符串和字符 1. ...
- java学习笔记--IO流
第十二章大纲: I/O input/output 输入/输出 一.创建文件,借助File类来实现 file.createNewFile() : 创建文件 file.exists() : 判断文件是否存 ...
- Java学习笔记-基础语法Ⅸ-文件
File File是文件和路径名的抽象表示,File封装的并不是一个真正存在的文件,是一个路径名,可以存在也可以不存在 常用方法: 创建文件:createNewFile() 创建目录:mkdir() ...
- Serlvet学习笔记之四—对文件的操作
1.读文件 package com.demo; import java.io.BufferedReader; import java.io.FileReader; import java.io.Pri ...
- JAVA学习笔记 -- 包资源文件jar包裹
初学者GUI,使用Eclipse出口jar包裹,不能显示最小化的图标集(hello.png根文件下的项目文件夹文件).码如下面: import javax.swing.JFrame; import j ...
- java学习笔记——IO流部分
IO流常用的有:字符流.字节流.缓冲流.序列化.RandomAccessFile类等,以上列出的都是开发中比较常用的. 1.字节流: 字节流包含:FileInputStream/FileOutputS ...
- Java学习笔记——Socket实现文件传输
我越是逃离,却越是靠近你. 我越是背过脸,却越是看见你. 我从你开始, 我在你结束. 需求:实现局域网下socket传输文件. 客户端步骤: 1.建立与服务器的连接 2.创建client输出流 3.创 ...
随机推荐
- Spring4 JDBC详解
Spring4 JDBC详解 在之前的Spring4 IOC详解 的文章中,并没有介绍使用外部属性的知识点.现在利用配置c3p0连接池的契机来一起学习.本章内容主要有两个部分:配置c3p0(重点)和 ...
- ligerUI---ListBox(列表框可移动)
写在前面: 对于可移动的列表框,ligerui中也对其进行了封装,可以直接照着demo拿来用,不过那都是直接在页面上静态初始化的数据,那么如何从后台获取? 前面有了对ligerui的一些组件的使用经验 ...
- 字符串的缺点以及StringBuilder
字符串的缺点: String 对象是不可改变的.每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间.在需要对字符串执行重复修改的 ...
- javaScript 的AMD
转载:http://www.cnblogs.com/happyPawpaw/archive/2012/05/31/2528864.html#undefined 1. AMD的由来 前端技术虽然在不断发 ...
- 《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(上)
目录 前言 第1章 安装 第2章 程序的基本结构 第3章 模板 第4章 Web表单 第5章 数据库 第6章 电子邮件 第7章 大型程序的结构 前言 学习Python也有一个半月时间了,学到现在感觉 ...
- ChatterBot之linux下安装mongodb 02
当前环境 :centos 6.9 mongodb版本 mongodb-linux-x86_64-3.4.4.tgz 使用链接工具:studio-3t-x64.msi.zip 首先我们先来安装mongo ...
- .NET Core快速入门教程 2、我的第一个.NET Core App(Windows篇)
一.前言 本篇开发环境?1.操作系统: Windows 10 X642.SDK: .NET Core 2.0 Preview 二.安装 .NET Core SDK 1.下载 .NET Core下载地址 ...
- Tomcat 源码分析(一)——启动与生命周期组件
写在前面的话:读Tomcat源码也有段时间了,大领悟谈不上.一些小心得记录下来,供大家参考相护学习. 一.启动流程 Tomcat启动首先需要熟悉的是它的启动流程.和初学者第一天开始写Hello Wor ...
- AspNet Core :创建自定义 EF Core 链接数据库
这两天比较忙,写的会慢一点. 我们以控制台演示 EF Core的链接数据库 首先创建控制台程序 创建数据上下文类 EntityTable /// <summary> /// 继承 DbCo ...
- 前端备忘录--JQuery选择器
基本选择器 基本选择器是最常用的选择器,也是最简单的选择器. $("#test") //选取id为test的元素 $(".test") //选取class为te ...