package com.rhythmk.filedemo;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.text.DateFormat;
import java.text.FieldPosition;
import java.text.ParsePosition;
import java.text.SimpleDateFormat;
import java.util.Properties;
import java.util.UUID; import org.junit.Test; public class file_demo1 { public String getPath() {
return System.getProperty("user.dir");
} @Test
public void 获取系统路径() {
String path = System.getProperty("user.dir");
System.out.println(path);
} @Test
public void 写入文件() throws IOException {
String filePath = getPath() + "\\a.txt";
File file = new File(filePath); if (file.canWrite()) {
System.out.println("可写");
}
FileWriter writer = new FileWriter(file, true); // 写入时间
SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
writer.write("-------" + time.format(new java.util.Date()) + "\r\n");
// 写入随机GUID
writer.write(UUID.randomUUID().toString() + "\r\n");
writer.flush();
writer.close(); System.out.println("写入文件成功路径:" + filePath); } @Test
public void 读取文件() throws IOException { String filePath = getPath() + "\\a.txt";
BufferedReader reader = new BufferedReader(new InputStreamReader(
new FileInputStream(filePath), "UTF-8"));
String txt = null;
while ((txt = reader.readLine()) != null) {
System.out.println(txt); } } @Test
public void 遍历文件夹() throws IOException {
String filePath = getPath() + "\\src";
ReadFile(filePath); } private void ReadFile(String path) throws IOException {
File file = new File(path); if (file.isDirectory()) {
System.out.println("当前目录地址为:" + path + "\r\n");
File[] filelist = file.listFiles();
for (File f : filelist) {
ReadFile(f.getAbsolutePath()); }
} else {
System.out.println("------当前文件地址为:" + path + "\r\n");
BufferedReader reader = new BufferedReader(new InputStreamReader(
new FileInputStream(path), "UTF-8"));
String txt = null;
while ((txt = reader.readLine()) != null) {
System.out.println(txt); }
}
} @Test
public void 删除文件() {
String filePath = getPath() + "\\12.txt";
File file = new File(filePath);
file.deleteOnExit();
} @Test
public void 获取文件信息() {
String filePath = getPath() + "\\a.txt";
File file = new File(filePath);
System.out.println("是否可读(canRead):" + file.canRead());
System.out.println("当前文件路径(getAbsolutePath):" + file.getAbsolutePath());
System.out.println("文件名称:" + file.getName());
System.out.println("文件大小:" + file.length());
System.out.println("文件是否存在:" + file.exists());
String fileNAME = file.getName();
System.out.println("后缀名:"
+ fileNAME.substring(fileNAME.lastIndexOf(".") + 1));
} @Test
public void 重命名() {
String filePath = getPath() + "\\a.txt";
File file = new File(filePath);
File file2 = new File(getPath() + "\\aaa.txt");
file.renameTo(file2); System.out.println("文件是否存在:" + file2.exists()); } @Test
public void 读取属性文件() {
String filePath = getPath() + "\\src\\app.properties";
Properties pro = new Properties();
try {
InputStream input = new FileInputStream(new File(filePath));
pro.load(input);
input.close();
} catch (Exception e) {
// TODO: handle exception
}
System.out.println(pro.getProperty("rhythmk"));
} }

如果迷茫,脚下的路不知道怎么走是好的时候,不要浪费时间在路口徘徊,凭感觉选择一条路走下去,。

Rhythmk 一步一步学 JAVA (19) JAVA IO 文件常用操作的更多相关文章

  1. Java 字符流实现文件读写操作(FileReader-FileWriter)

    Java 字符流实现文件读写操作(FileReader-FileWriter) 备注:字符流效率高,但是没有字节流底层 字节流地址:http://pengyan5945.iteye.com/blog/ ...

  2. Java - 19 Java 异常处理

    Java 异常处理 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误java.lang.Error:如果你用 ...

  3. java中的File文件读写操作

    之前有好几次碰到文件操作方面的问题,大都由于时间太赶而没有好好花时间去细致的研究研究.每次都是在百度或者博客或者论坛里面參照着大牛们写的步骤照搬过来,之后再次碰到又忘记了.刚好今天比較清闲.于是就在网 ...

  4. Java学习之==>IO文件操作体系

    一.概述 在整个 Java.io 中最重要的就是5个类和一个接口.5个类指的是 File.InputStream.OutputStream.Reader.Writer,一个接口指的是Serializa ...

  5. JAVA对数字证书的常用操作(转载)

    一:需要包含的包 import java.security. * ; import java.io. * ; import java.util. * ; import java.security. * ...

  6. Java篇-File类之常用操作

    /** * */ package com.io.file; import java.io.File; import java.io.IOException; /** * <pre> * & ...

  7. JAVA基于缓冲的文件读写操作

    File f2 = new File("e://index.java"); BufferedReader reader = new BufferedReader(new Input ...

  8. java学习之IO文件分割

    package om.gh.homework; import java.io.*; /** * 实现分割文件; * @param file */ public class HomeWork { /** ...

  9. .Net转Java.07.IDEA和VS常用操作、快捷键对照表

      功能 IDEA 2017.1 快捷键   Visual Studio 2015 快捷键 文档 格式化整个文档 Ctrl+Alt+L   Ctrl+E,D 或者 Ctrl+K,D  文件 显示最近的 ...

随机推荐

  1. stark组件03

    优化代码 1:页面的增删改查url反转的封装到类里:ModelSatrk # 编辑页面的url def get_edit_url(self,obj): edit_url = reverse(" ...

  2. 【剑指offer】链表中倒数第k个节点,C++实现(链表)

    1.题目 输入一个链表,输出该链表中倒数第k个结点.链表的尾节点是倒数第一个节点. struct ListNode { int val; struct ListNode *next; } 2.思路   ...

  3. [转载][QT][SQL]sq]学习记录1_模糊搜索

    转载自:sql学习网站: http://www.w3school.com.cn/sql/index.asp 用于模糊搜索数据库的数据 语句:http://www.w3school.com.cn/sql ...

  4. win8 ie10 debug flex

    win8 ie10 使用flash debug方法: 删除c:\WINDOWS\system32\Macromed\Flash.c:\WINDOWS\SysWOW64\Macromed\Flash里面 ...

  5. Linux运行环境搭建(一)——安装JDK

    下载Linux版jdk 官网:http://www.oracle.com/technetwork/java/javase/downloads/index.html 解压并拷贝到指定目录 tar zxv ...

  6. (转)Java获取CLASSPATH路径

    ClassLoader提供了两个方法用于从装载的类路径中取得资源: public URL getResource(String name); public InputStream getResourc ...

  7. shell编程--遍历目录下的文件

    假定目录text下有如下文件      目录:dir_1.dir_2.dir_3 文件:text_1.text_2 遍历目录下所有的文件是目录还是文件 if -- if类型: #!bin/sh for ...

  8. 理解可变参数va_list、va_start、va_arg、va_end原理及使用方法

    原文: http://www.cnblogs.com/pengdonglin137/p/3345911.html

  9. Cucumber 使用例子

    1. junit 配置 @RunWith(Cucumber.class) @CucumberOptions(format ={"pretty","html:target/ ...

  10. 关于1024:堆栈下溢的错误(1024. Stack Underflow Occurred)

    http://blog.163.com/sylar_lin/blog/static/192332093201111242412487/ 今天碰到个很奇怪的问题,注释掉下面的trace,realse版本 ...