记录学习--文件读写

1、读文件

java 复制代码
	public static String file2String(final String fileName) throws IOException {
        File file = new File(fileName);
        return file2String(file);
    }

    public static String file2String(final File file) throws IOException {
        if (file.exists()) {
            byte[] data = new byte[(int) file.length()];
            boolean result;

            try (FileInputStream inputStream = new FileInputStream(file)) {
                int len = inputStream.read(data);
                result = len == data.length;
            }

            if (result) {
                return new String(data, DEFAULT_CHARSET);
            }
        }
        return null;
    }

2、写文件

java 复制代码
    public static void string2FileNotSafe(final String str, final String fileName) throws IOException {
        File file = new File(fileName);
        File fileParent = file.getParentFile();
        if (fileParent != null) {
            fileParent.mkdirs();
        }
        IOTinyUtils.writeStringToFile(file, str, DEFAULT_CHARSET);
    }

    public static void writeStringToFile(File file, String data, String encoding) throws IOException {
        OutputStream os = null;
        try {
            os = new FileOutputStream(file);
            os.write(data.getBytes(encoding));
        } finally {
            if (null != os) {
                os.close();
            }
        }
    }
相关推荐
不会敲代码12 分钟前
从入门到进阶:手写React自定义Hooks,让你的组件更简洁
前端·react.js
用户5433081441944 分钟前
拆完 Upwork 前端我沉默了:你天天卷的那些技术,人家根本没用
前端
洋洋技术笔记5 分钟前
Vue实例与数据绑定
前端·vue.js
Re_zero5 分钟前
线上日志被清空?这段仅10行的 IO 代码里竟然藏着3个毒瘤
java·后端
Marshall1515 分钟前
zzy-scroll-timer:一个跨框架的滚动定时器插件
前端·javascript
洋洋技术笔记10 分钟前
Spring Boot条件注解详解
java·spring boot
明月_清风2 小时前
打字机效果优化:用 requestAnimationFrame 缓冲高频文字更新
前端·javascript
明月_清风2 小时前
Markdown 预解析:别等全文完了再渲染,如何流式增量渲染代码块和公式?
前端·javascript
掘金安东尼2 小时前
用 CSS 打造完美的饼图
前端·css
掘金安东尼10 小时前
纯 CSS 实现弹性文字效果
前端·css