public class FileUtil {
static Logger log = Logger.getLogger(FileUtil.class);
public static String readFile(InputStream is) throws IOException{
if(is==null) return null;
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String tmp = "";
String result = "";
try {
while((tmp = reader.readLine()) !=null)
if(tmp.length() > 0)
result = result + tmp.trim();
}
catch (IOException e) {
throw e;
}
finally {
reader.close();
}
return result;
}
public static String readFile(String path) throws IOException{
InputStream is = null;
try {
is = new FileInputStream(path);
return readFile(is);
}
catch (IOException e) {
throw e;
}
finally {
is.close();
}
}
public static boolean removeFile(String path){
return removeFile(path, true);
}
public static boolean removeFile(String filePath, boolean removeParent){
boolean isdelete = false;
File file = new File(filePath);
if(file.exists()){
isdelete = file.delete();
if(removeParent){
File parent = file.getParentFile();
if(parent!=null){
if(parent.listFiles()==null || parent.listFiles().length==0){
removeFile(parent.getPath(), removeParent);
}
}
}
}
return isdelete;
}
public static void writeFile(String path, String content) throws IOException{
File file = new File(path);
FileWriter fw = null;
try {
fw = new FileWriter(file, true);
fw.write(content);
fw.flush();
}
catch (IOException e) {
throw e;
}
finally{
fw.close();
}
}
public static boolean copyFile(String filePath, String backupPath) throws IOException{
BufferedInputStream reader = null;
PrintStream out = null;
File file = new File(filePath);
if(file.exists()){
try {
reader = new BufferedInputStream(new FileInputStream(file));
String directory = backupPath.substring(0, backupPath.lastIndexOf("/") + 1);
File tempfile = new File(directory);
if(!tempfile.exists()){
tempfile.mkdirs();
}
File backupFile = new File(backupPath);
out = new PrintStream(new BufferedOutputStream(new FileOutputStream(backupFile)));
byte[] b = new byte[2048];
while((reader.read(b, 0, b.length))!=-1){
out.write(b);
}
out.flush();
}
catch (FileNotFoundException e) {
e.printStackTrace();
return false;
}
catch (IOException e) {
e.printStackTrace();
return false;
}
finally {
reader.close();
out.close();
}
} else {
log.error("文件" + filePath + "在当前路径下不存在!");
return false;
}
return true;
}
}
分享到:
相关推荐
我自己写的一些关于IO中的见解,可以用来参考。 File的增、删、改、查,FileReader和FileWriter类,BufferedReader和BufferedWriter类,ObjectOutputStream和ObjectInputStream类
常用IO芯片引脚 主板IO图纸之-w83977EF 主板IO图纸之-w83877ATF 主板IO图纸之-w83697HF 主板IO图纸之-w83627THF 主板IO图纸之-W83627SF 主板IO图纸之-w83627HF
下面将详细介绍一下ABB机器人常用的IO板及其功能。 1. **数字输入板(Digital Input Board)**: 数字输入板用于接收来自外部系统的数字信号,例如限位开关、按钮或传感器的开/关状态。这些信号通常为二进制形式,...
标题中的“AB常用IO接线大全”指的是Allen Bradley(AB)公司的I/O模块接线的综合指南。Allen Bradley是美国Rockwell Automation旗下的知名品牌,主要生产工业自动化设备,尤其是PLC(可编程逻辑控制器)产品。这个...
总之,AB全系列常用IO接线大全为技术人员提供了一套详细的接线方法和安全指南,是使用AB系列PLC时不可或缺的参考资料。通过对各个型号I/O模块的理解和正确的接线操作,可以确保整个控制系统的可靠运行。
- 字节输出流(OutputStream):OutputStream 是所有字节输出流的抽象基类,提供了写入字节数据的基本方法。例如,`FileOutputStream` 是字节输出流的一个具体实现,用于向文件写入字节数据。以下是一个使用 `...
**draw.io:一款免费开源的在线绘图工具** draw.io是一款功能强大的在线绘图工具,专为需要绘制各种图表和图形的用户设计。它提供了一个简单易用的界面,允许用户无需任何专业技能就能创建出专业级别的图表。无论是...
`commons-io-2.5.jar` 是Apache Commons项目的一部分,它提供了一系列增强和扩展了Java标准IO库的类和方法。这个库为开发者提供了更高效、更便捷的方式来执行常见的文件、目录和流操作。 一、Java IO 基础 Java IO ...
适用于初学者 io输入输出的简单方法 对初学者很用用处
### 电脑常用IO芯片F71883FG的Datesheet关键知识点解析 #### 一、概述 在电脑硬件领域,尤其是主板设计中,IO控制芯片扮演着至关重要的角色。本文将详细介绍F71883FG这款电脑主板常用IO控制芯片的相关知识点,包括...
Java IO操作是Java编程中非常基础且重要的部分,它提供了对输入输出流的处理,使得程序能够与外部设备(如硬盘、网络、键盘、显示器等)进行数据交换。本工具结合了Java IO操作和JXL库,实现了读取Excel文件并进行...
本篇文章将深入探讨`java.io`包中一些常用的类,并通过实例来展示它们的使用方法。 1. **InputStream 和 OutputStream**: - `InputStream` 是所有字节输入流的超类,代表一个字节序列的输入源。常见的子类有 `...
本文将详细解析文件操作字节流的常用方法,包括输入字节流`FileInputStream`和输出字节流`FileOutputStream`。 1. 文件操作输入字节流 `FileInputStream` `FileInputStream` 是Java中用于处理二进制数据输入的类,...
### io包中常用类的作用、重要方法及类之间的继承关系 #### 一、概述 Java的`io`包提供了大量的类来处理输入/输出操作,包括文件读写、网络通信等场景。这些类的设计遵循了良好的面向对象设计原则,通过抽象类和...
当机器人重启后,默认会显示设定的常用IO信号,无论是在手动还是自动模式下,无需人工干预即可显示。 ##### 2. 设定步骤 - **步骤1**:通过ABB菜单进入**控制面板**,找到**常用IO配置**选项。 - **步骤2**:配置...
其中,signal driven IO 在实际中并不常用,因此这里只讨论剩下的四种IO 模型。 总结 在本文中,我们讨论了基于系统底层通信技术Socket 的JAVA IO同步和异步操作,包括阻塞和非阻塞IO 操作。同步IO 是指应用程序在...
三、常用IO流类 1. FileInputStream和FileOutputStream:分别用于读取和写入文件的字节流。 2. FileReader和FileWriter:用于读取和写入文件的字符流,基于Unicode编码。 3. BufferedReader和BufferedWriter:用于...
Apache Commons IO是Java开发中常用的一个开源库,其核心组件是`common-io.jar`,这个库提供了大量的实用工具类,用于处理日常的输入/输出(I/O)操作。在Java标准库中,I/O操作虽然已经提供了一定的支持,但Apache ...
在"点亮多个led灯方法1.c"源代码文件中,我们可以预期会看到对单片机IO端口的配置和LED灯状态的控制代码。IO端口是单片机与外部世界交互的通道,通过设置端口的输出电平,我们可以控制LED灯的亮灭。 IO输出_Opt.Bak...
在这个主题中,我们将深入探讨Java IO的基本概念、核心类以及常用的操作。 1. **基本概念** - **流(Stream)**: Java IO基于流的概念,流是数据的序列,可以是字节流或字符流,用于读取或写入数据。 - **节点流...