/** * 读写文件 * @param fileName 文件名 * @param context 内容 * @param op D:删除文件;R:读文件;A:添加内容 * @return 1.success:成功;2.fail:失败; 3.读文件直接返回内容 */ public String operationFile(String fileName,String context,String op) { File logsDirectory = new File(WebActivity.SDCARD_LOGS_PATH); if(!logsDirectory.exists()){ logsDirectory.mkdirs(); } File file = new File(logsDirectory+ "/" + fileName); FileInputStream fi = null; InputStreamReader isr = null; BufferedReader bfin = null; FileOutputStream outSTr = null; BufferedOutputStream Buff = null; try { if("D".equals(op)){//删除文件 if(file.exists()){ file.delete(); } return "success";//删除文件成功 } else if("A".equals(op)){// 写文件 if(!file.exists()){ file.createNewFile(); } if(file.length() > 5*1024*1024){//大于5M 备份文件 删除之前备份的文件 File oldFile = new File(file.getParent()+File.separator+file.getName()+"_back"); if(oldFile.exists()){ oldFile.delete(); } if(file.renameTo(oldFile)){ file.createNewFile(); } else { return "fail";//读写文件失败 } } outSTr = new FileOutputStream(file,true); Buff = new BufferedOutputStream(outSTr); String newstr = new String(Base64.encode(context.getBytes(), Base64.DEFAULT)).replaceAll("\r\n", "").replaceAll("\r", "").replaceAll("\n", ""); Buff.write((newstr+"\r\n").getBytes()); Buff.flush(); return "success"; } else if("R".equals(op)){//读文件 if(!file.exists()){ return "fail";//读写文件失败 } fi = new FileInputStream(file); isr = new InputStreamReader(fi, "UTF-8"); bfin = new BufferedReader(isr); String content = ""; String rLine = ""; while ((rLine = bfin.readLine()) != null) { content += new String(Base64.decode(rLine.getBytes(), Base64.DEFAULT))+"\r\n"; } return content; } } catch (Exception e) { e.printStackTrace(); } finally{ try { if (bfin != null) bfin.close(); if (isr != null) isr.close(); if (fi != null) fi.close(); if (Buff != null) Buff.close(); if (outSTr != null) outSTr.close(); } catch (IOException e) { e.printStackTrace(); } } return "fail";//读写文件失败 }
相关推荐
下面我们将深入探讨Java IO读取文件的技术及其在大数据场景下的应用。 1. **基础概念** - **流(Stream)**:Java IO基于流的概念,流是一组有序的数据序列,可以是字节流或字符流。数据从源(如文件)流向目的地...
`FileInputStream`和`OutputStream`是Java IO API中的基础类,用于进行原始字节流的读写操作。而`BufferedReader`则是一个字符流类,它通过缓冲区提高读取效率。下面我们将深入探讨这些概念以及如何使用它们来实现...
java io 文件读写
总的来说,Java基于IO流读取文件的过程包括以下几个步骤: 1. 获取文件路径并解码。 2. 创建`File`对象,表示要读取的文件。 3. 使用`FileInputStream`创建字节输入流,用于读取二进制数据。 4. 使用`...
JAVA IO流文件读写大全下载 JAVA IO流是Java语言中对输入/输出(Input/Output)操作的抽象表示。它提供了多种流机制来实现文件的读写操作。本文将对JAVA IO流文件读写的知识点进行详细的解释和分析。 1. JAVA IO流...
### Java IO学习基础之读写文本文件 #### 一、Java IO概述 Java IO(Input/Output)是Java中处理输入输出操作的核心包,它主要提供了文件读写、网络通信等基本功能。Java IO操作主要基于流的概念进行,分为字节流...
### 一、Java IO读取文件内容 #### 1. 按字节读取文件内容 在Java中,可以通过`FileInputStream`类来按字节读取文件。此方法适用于读取二进制文件,例如图片、声音或视频等非文本数据。下面是一个简单的示例代码:...
// 读取文件 FileReader fr = new FileReader("file.txt"); BufferedReader br = new BufferedReader(fr); String line; while ((line = br.readLine()) != null) { System.out.println(line); } br.close(); // ...
JavaIO简单的写入读取文件 javaIO简单的写入读取文件是Java编程语言中最基本的文件操作。下面我们将详细介绍javaIO简单的写入读取文件的知识点。 一、 文件写入 文件写入是指将数据从程序中写入到文件中。Java中...
本工具结合了Java IO操作和JXL库,实现了读取Excel文件并进行数据处理的功能,主要应用于国际化键值的替换。 首先,Java IO操作包括了基本的文件操作,如创建、读取、写入和删除文件。在Java中,我们通常使用`File`...
Java 中文件 IO 流是指 Java 语言中对文件的输入输出操作,通过定义文件流来实现文件的读写操作。文件流是指在程序中用于文件输入输出的对象, Java 中提供了多种文件流类型,包括 InputStream 和 OutputStream 两大...
Java IO 流、文件读取操作 Java IO 流是 Java 语言中的一种基本输入/输出机制,它提供了多种方式来处理输入/输出操作。在 Java 中,IO 流可以分为两大类:字节流和字符流。字节流主要用于处理二进制数据,而字符流...
本篇将重点介绍如何使用Java的IO类来读取文件,并提供了几个示例代码,涵盖从基本的字节流读取到字符流读取,再到使用缓冲流的增强性能读取方式。 首先,我们需要了解Java中处理文件读取的基本类。java.io 包提供了...
在Java中,读取文件主要依赖于`java.io`包中的类,如`FileReader`和`BufferedReader`。这些类提供了处理文件输入的基本功能。`FileReader`用于读取字符文件,而`BufferedReader`则在`FileReader`的基础上添加了缓冲...
在Java编程语言中,按顺序读取文件是基础且重要的操作。这通常涉及到使用I/O流(Input/Output Stream)来处理文件数据。本篇文章将深入探讨如何在Java中实现按顺序读取文件,以及涉及的相关知识点。 首先,Java提供...
Java中`java.io.FileInputStream`类提供了按字节读取文件的功能。这种方法适用于读取二进制文件,例如图像、音频或视频文件。下面的代码示例展示了如何按字节读取文件: ```java FileInputStream in = new ...