`
ychengIT
  • 浏览: 15669 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java io读写文件

    博客分类:
  • java
 
阅读更多
/**
	 * 读写文件
	 * @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读取文件

    下面我们将深入探讨Java IO读取文件的技术及其在大数据场景下的应用。 1. **基础概念** - **流(Stream)**:Java IO基于流的概念,流是一组有序的数据序列,可以是字节流或字符流。数据从源(如文件)流向目的地...

    Java io 读写文件

    `FileInputStream`和`OutputStream`是Java IO API中的基础类,用于进行原始字节流的读写操作。而`BufferedReader`则是一个字符流类,它通过缓冲区提高读取效率。下面我们将深入探讨这些概念以及如何使用它们来实现...

    java io 文件读写

    java io 文件读写

    Java基于IO流读取文件的方法

    总的来说,Java基于IO流读取文件的过程包括以下几个步骤: 1. 获取文件路径并解码。 2. 创建`File`对象,表示要读取的文件。 3. 使用`FileInputStream`创建字节输入流,用于读取二进制数据。 4. 使用`...

    JAVA IO流文件读写大全下载

    JAVA IO流文件读写大全下载 JAVA IO流是Java语言中对输入/输出(Input/Output)操作的抽象表示。它提供了多种流机制来实现文件的读写操作。本文将对JAVA IO流文件读写的知识点进行详细的解释和分析。 1. JAVA IO流...

    Java IO学习基础之读写文本文件

    ### Java IO学习基础之读写文本文件 #### 一、Java IO概述 Java IO(Input/Output)是Java中处理输入输出操作的核心包,它主要提供了文件读写、网络通信等基本功能。Java IO操作主要基于流的概念进行,分为字节流...

    java_IO操作_(读写、追加、删除、移动、复制、修改

    ### 一、Java IO读取文件内容 #### 1. 按字节读取文件内容 在Java中,可以通过`FileInputStream`类来按字节读取文件。此方法适用于读取二进制文件,例如图片、声音或视频等非文本数据。下面是一个简单的示例代码:...

    Java IO 基础操作(文件读写和移动)

    // 读取文件 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简单的写入读取文件 javaIO简单的写入读取文件是Java编程语言中最基本的文件操作。下面我们将详细介绍javaIO简单的写入读取文件的知识点。 一、 文件写入 文件写入是指将数据从程序中写入到文件中。Java中...

    常用java IO操作以及用jxl读写excel 工具源代码

    本工具结合了Java IO操作和JXL库,实现了读取Excel文件并进行数据处理的功能,主要应用于国际化键值的替换。 首先,Java IO操作包括了基本的文件操作,如创建、读取、写入和删除文件。在Java中,我们通常使用`File`...

    Java中文件IO流.pdf

    Java 中文件 IO 流是指 Java 语言中对文件的输入输出操作,通过定义文件流来实现文件的读写操作。文件流是指在程序中用于文件输入输出的对象, Java 中提供了多种文件流类型,包括 InputStream 和 OutputStream 两大...

    java io 流,文件读取操作

    Java IO 流、文件读取操作 Java IO 流是 Java 语言中的一种基本输入/输出机制,它提供了多种方式来处理输入/输出操作。在 Java 中,IO 流可以分为两大类:字节流和字符流。字节流主要用于处理二进制数据,而字符流...

    java io读取文件操作代码实例

    本篇将重点介绍如何使用Java的IO类来读取文件,并提供了几个示例代码,涵盖从基本的字节流读取到字符流读取,再到使用缓冲流的增强性能读取方式。 首先,我们需要了解Java中处理文件读取的基本类。java.io 包提供了...

    java如何读取文件

    在Java中,读取文件主要依赖于`java.io`包中的类,如`FileReader`和`BufferedReader`。这些类提供了处理文件输入的基本功能。`FileReader`用于读取字符文件,而`BufferedReader`则在`FileReader`的基础上添加了缓冲...

    java 按顺序读取文件

    在Java编程语言中,按顺序读取文件是基础且重要的操作。这通常涉及到使用I/O流(Input/Output Stream)来处理文件数据。本篇文章将深入探讨如何在Java中实现按顺序读取文件,以及涉及的相关知识点。 首先,Java提供...

    java 读取文件 文件读取操作

    Java中`java.io.FileInputStream`类提供了按字节读取文件的功能。这种方法适用于读取二进制文件,例如图像、音频或视频文件。下面的代码示例展示了如何按字节读取文件: ```java FileInputStream in = new ...

Global site tag (gtag.js) - Google Analytics