Java字符串与文件的互转

Java中有时候需要读取一个文本类的文件,将其转换为字符串,然后做进一步处理。Java中没有现成的API方法,自己手动实现一个,大家来分享。

一、字符串转换为文件

/**

* 将字符串写入指定文件(当指定的父路径中文件夹不存在时,会最大限度去创建,以保证保存成功!)

*

* @param res 原字符串

* @param filePath 文件路径

* @return 成功标记

*/

public static boolean string2File(String res, String filePath) {

boolean flag = true;

BufferedReader bufferedReader = null;

BufferedWriter bufferedWriter = null;

try {

File distFile = new File(filePath);

if (!distFile.getParentFile().exists()) distFile.getParentFile().mkdirs();

bufferedReader = new BufferedReader(new StringReader(res));

bufferedWriter = new BufferedWriter(new FileWriter(distFile));

char buf[] = new char[1024]; //字符缓冲区

int len;

while ((len = bufferedReader.read(buf)) != -1) {

bufferedWriter.write(buf, 0, len);

}

bufferedWriter.flush();

bufferedReader.close();

bufferedWriter.close();

} catch (IOException e) {

e.printStackTrace();

flag = false;

return flag;

} finally {

if (bufferedReader != null) {

try {

bufferedReader.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

return flag;

}

二、文件转换为字符串

/**

* 文本文件转换为指定编码的字符串

*

* @param file 文本文件

* @param encoding 编码类型

* @return 转换后的字符串

* @throws IOException

*/

public static String file2String(File file, String encoding) {

InputStreamReader reader = null;

StringWriter writer = new StringWriter();

try {

if (encoding == null || "".equals(encoding.trim())) {

reader = new InputStreamReader(new FileInputStream(file), encoding);

} else {

reader = new InputStreamReader(new FileInputStream(file));

}

//将输入流写入输出流

char[] buffer = new char[DEFAULT_BUFFER_SIZE];

int n = 0;

while (-1 != (n = reader.read(buffer))) {

writer.write(buffer, 0, n);

}

} catch (Exception e) {

e.printStackTrace();

return null;

} finally {

if (reader != null)

try {

reader.close();

} catch (IOException e) {

e.printStackTrace();

}

}

//返回转换结果

if (writer != null)

return writer.toString();

else return null;

}

分享到:

2010-12-31 11:08

浏览 857

评论

java 文件转换字符串_java字符串文件互相转换相关推荐

  1. java流的相互转化_java 将文件流转化成字符串传输

    1. 需要文件转换成字节数组. 2. 将字节数组转换成字符串,不过需要注意的是需要将字节数组使用Base64加密,这样防止传输过程中因为编码问题导致文件损坏的问题. 3. 接收方将字符串转化成字节数组 ...

  2. java字符转数字_Java字符串和数字间的转换

    title: Java字符串和数字间的转换 date: 2016-04-23 23:06:50 categories: Java tags: Java 一.字符串转数字 1.通过基本类型对应的包装类则 ...

  3. java 时间转换成字符串_java 获得系统时间 转换成字符串

    1.long字符串转换成yyyy-MM-dd HH:mm:ss 格式输出 /** * 将长时间格式字符串转换为字符串 yyyy-MM-dd HH:mm:ss * @return */ public s ...

  4. java 文件 加解密_Java实现文件的加密解密功能示例

    Java实现文件的加密解密功能示例 发布时间:2020-10-05 22:05:15 来源:脚本之家 阅读:86 作者:FC WORLD!!! 本文实例讲述了Java实现文件的加密解密功能分享给大家供 ...

  5. java目录实用工具_JAVA 创建文件和文件夹,删除文件和文件夹的实用工具

    package com.file; import java.io.File; import java.io.IOException; //创建新文件和目录 public class CCRDFile ...

  6. java 批量重命名_Java实现文件批量重命名

    Windows操作系统可以实现重命名文件操作,却不能实现批量重命名.本实例实现了批量重命名功能,可以将一个文件夹内同一类型的文件按照一定的规则批量重命名.用户可以给出重命名模板,程序可以根据模板对相应 ...

  7. java file数组 初始化_java从文件中读取数据并赋值给数组

    从txt文件中读取数据赋值给一维数组 字节流读入字节数组中 字节数组转化为字符串 字符创解析为字符串数组 字符串数组转化为数值,并赋值为数组 文本文件是以字节的形式储存的. 在txt文件中一个数字或者 ...

  8. java 填充字符串_Java字符串右补齐——String.format

    Java字符串右补齐方法: System.out.println(String.format("%-4s", "ab")); //"%-4s" ...

  9. java 断点上传_java HTTP文件断点上传

    之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...

最新文章

  1. vue element 导出blob后台文件流xlsx文件自动下载(且规避乱码)
  2. Docker 实战总结(非常全面)
  3. 杭电2031进制转换
  4. 假如不工作了,你还有源源不断的收入吗?
  5. 微信收款音响s3服务器断开,微信收款音响s2和s3有什么区别
  6. java手机象棋软件下载,Java手机网络版象棋游戏附源码JAVA游戏源码下载
  7. java线程创建过程_Java创建线程的细节分析
  8. java代码运行Python程序
  9. 蓝桥杯OJ示例题目之A+B问题——掌握获取输入的基本方法(Python)
  10. select函数何时返回?
  11. 一文解决C语言运算符的优先性与结合性——Think like a computer
  12. Excel 统计起止时间
  13. poisoned dagger
  14. oracle bom递归查询,求多阶BOM查询代码
  15. java swing实训项目(图书管理系统)
  16. iOS Siri调用自己应用的视频呼叫功能
  17. CentOS (Community Enterprise Operating System)是什么?
  18. 计算机音乐专业学什么软件,四款音乐学习、制作软件推荐,开启你的音乐人之路...
  19. 工程监测多通道振弦模拟信号采集仪VTN参数修改
  20. 通过SimpleApp例程理解绑定的流程(三)

热门文章

  1. 8、路由 router
  2. 正确判断js数据类型 总结记录
  3. cf1039D 分块
  4. [leetcode-108,109] 将有序数组转换为二叉搜索树
  5. 删除kafka topic
  6. Ninject依赖注入(一)
  7. poj 3678 Katu Puzzle(2-sat)
  8. 【动态规划】【多重背包】[HDU 1291]悼念512汶川大地震遇难同胞――珍惜现在,感恩生活...
  9. win7下 apache2.2 +php5.4 环境搭建
  10. 每天自动给自己发天气预报的脚本