java实现文件读入、读出功能

2023-11-17

一、文档读取


(1)将文件读取为String


/** 2019/12/26
* 将文档打开,并将文档内容读入String中
*/
public static String TxtToString(File file) {
    String result = "";
    try {
        BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件
        String s = null;
        while ((s = br.readLine()) != null) {//使用readLine方法,一次读一行
            result = result + "\n" + s;
        }
        br.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
    return result;
}

(2)将文件读取为List集合(按行)


/** 2019/12/26
* 将文档打开,将文档内容按行读入集合中
*/
public static List<String> TxtToStringList(File file) {
    List<String> result = new ArrayList<>();
    try {
        if (!file.exists()){
            return null;
        }
        BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件
        String s = null;
        while ((s = br.readLine()) != null) {//使用readLine方法,一次读一行
            result.add(s);
        }
        br.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
    return result;
}


二、Java存储文件

(1)将list按行写入到txt文件中

/**
* 将list按行写入到txt文件中
* @param strings
* @throws Exception
*/
public static void writeFileContext(List<String> strings) throws Exception {
    File file = new File("D:\\IntellijIDEAProject\\KeChenSheJi\\data\\WordLibrary_index");
    //如果没有文件就创建
    if (!file.isFile()) {
        file.createNewFile();
    }
    BufferedWriter writer = new BufferedWriter(new FileWriter("D:\\IntellijIDEAProject\\KeChenSheJi\\data\\WordLibrary_index"));
    for (String l:strings){
        writer.write(l + "\r\n");
    }
    writer.close();
}


(2)按照名字,将string类型的集合存入文件


/**
* 按照名字,将string类型的集合存入文件
* */
public static void writeFileContext_Find(List<String> strings,String name) throws Exception {
    File file = new File("D:\\IntellijIDEAProject\\KeChenSheJi\\data\\wordIndex");
    //如果没有文件就创建
    if (!file.isFile()) {
        file.createNewFile();
    }
    BufferedWriter writer = new BufferedWriter(new FileWriter("D:\\IntellijIDEAProject\\KeChenSheJi\\data\\wordIndex\\"+name));
    for (String l:strings){
        writer.write(l + "\r\n");
    }
    writer.close();
}

(3)将Sting类型的list集合 按文件地址存储

/** 2019/12/26
* 将Sting类型的list集合 按文件地址存储
*/
public static void writeFileContext_Found(List<String> strings,String filename) throws Exception {
    File file = new File(filename);
    //如果没有文件就创建
    if (!file.isFile()) {
        file.createNewFile();
    }
    BufferedWriter writer = new BufferedWriter(new FileWriter("D:\\IntellijIDEAProject\\KeChenSheJi\\data\\file_index\\"+file.getName()));
    for (String l:strings){
        writer.write(l + "\r\n");
    }
    writer.close();
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java实现文件读入、读出功能 的相关文章

  • List接口及其实现类

    List接口 鉴于Java中数组用来存储数据的局限性 我们通常使用List替代数组 List集合类中元素有序 且可重复 集合中的每个元素都有其对应的顺序索引 List容器中的元素都对应一个整数型的序号记载其在容器中的位置 可以根据 序号存取
  • 基本数据类型对象包装类

    基本数据类型对象包装类 为了方便操作基本数据类型值 将其封装成了对象 在对象中定义了属性和行为丰富了该数据的操作 用于描述该对象的类就称为基本数据类型包装类 byte Byte short Short int Integer long Lo
  • JavaSE + bluecove 蓝牙连接

    最近公司准备将旧系统的 NET部分翻版 项目除了有后台的还有个与设备对接的客户端用蓝牙连接的 所有这周对相关技术做了一个验证 搜了一下Java 蓝牙相关信息 我去资料也太少了 少也就算了连bluecove库也是有问题的 经过艰难的查找 最终
  • java中CompletableFuture异步编程详解以及实践案例

    文章目录 一 CompletableFuture的使用 1 创建CompletableFuture的方式 2 获得异步执行结果 3 对执行结果进行处理 4 对执行结果进行消费 5 异常处理 6 两组任务按顺序执行 7 两组任务谁快用谁 8
  • Java jdk1.5 新特性讲解

    JDK1 5 可以说是java 最经典的一个版本了 在 jdk1 5 发布时 就因他的改动大 而命令为jdl5 0 为后来 java 的壮大立下了汗马之劳 有网友在面试的时候被问到 jdk新特性 我这里索性就从 jdk1 5的特性说到1 8
  • java - 面向对象程序的三大特性 封装、继承、多态

    目录 1 封装 1 1访问限定符 1 2包 1 3导入包中的类 1 4如何自定义包 1 5 包的访问权限控制举例 1 6 常见的包 1 7如果修改封装好的成员变量 2 继承 什么继承 子类中访问父类成员变量 子类和父类不存在同名成员变量 子
  • 如何优雅的打印数组

    如何优雅的打印数组 以下文章来源于沉默王二 作者沉默王二 https mp weixin qq com s 20s0XSsdUE2qJDP4OtM rw 在 Java 中 数组虽然是一个对象 但并未明确的定义这样一个类 因此也就没有覆盖 t
  • 浅谈Javac编译原理

    一 javac是什么 1 javac是一种编译器 能够将一种语言规范转化成另外一种语言规范 2 javac的任务就是将Java源代码转化成JVM能够识别的一种语言 Java字节码 这种字节码不是针对某种机器 某种平台的 二 javac编译器
  • 用户态和内核态的区别

    一 操作系统需要两种CPU状态 内核态 Kernel Mode 运行操作系统程序 操作硬件 用户态 User Mode 运行用户程序 二 指令划分 特权指令 只能由操作系统使用 用户程序不能使用的指令 举例 启动I O 内存清零 修改程序状
  • JqGrid完整例子

    之前写过一篇过于ajax异步加载jqgrid的文章 那个只是一个特殊的情况 如果创建不同数据库表的jqgrid 必须分别写servlet dao层和连接池 很麻烦 今天我写了一个万能的写法 客官只要在前台js中写入表格名称和字段名称即可实现
  • Java GUI 学习笔记(基础)

    Java GUI体系继承图附上 常用的窗体有 JFrame 和 JDialog JFrame JFrame 是一个 swing 容器 即是各个组件的载体 构造方法 1 JFrame 创建一个无标题的窗口 2 Frame String s 创
  • Java 三大特性学习笔记(基础)

    目录 约定俗成的运算符 铺垫 1 逻辑运算中的 和 和 一个符号 和两个符号 的区别是 2 位 bit 运算中的 和 第一个特性 封装性 封装修饰符介绍 以下封装等级由低写到高 1 public 公开等级 相当于没有封装 2 protect
  • UDP网络基础知识简介

    作者简介 CSDN2021博客之星亚军 新星计划导师 博客专家 哪吒多年工作总结 Java学习路线总结 搬砖工逆袭Java架构师 关注公众号 哪吒编程 回复1024 获取Java学习路线思维导图 大厂面试真题 加入万粉计划交流群 一起学习进
  • java基础之内存机制详解

    今天有看到一篇好的关于java内存机制的文章 果断转载过来 哈哈哈哈哈哈 堆区 1 存储的全部是对象 每个对象都包含一个与之对应的class的信息 class的目的是得到操作指令 2 jvm只有一个堆区 heap 被所有线程共享 堆中不存放
  • 【Java知识点详解 8】缓存

    Java学习路线推荐 Java基础教程系列 SpringBoot精品推荐 Spring Boot基础教程 简介 Java领域优质创作者 CSDN哪吒公众号作者 Java架构师奋斗者 扫描主页左侧二维码 加入群聊 一起学习 一起进步 欢迎点赞
  • List 集合 —— ArrayList

    ArrayList 简介 成员变量 构造方法 成员方法 增 删 其他 总结 参考 简介 ArrayList 是 Java 集合框架中比较常用的类 是用来存储数据的容器 可存储重复的元素 允许存储null值 底层基于数组实现容量大小动态变化
  • Java之StringUtils的常用方法

    StringUtils 方法的操作对象是 Java lang String 类型的对象 是 JDK 提供的 String 类型操作方法的补充 并且是 null 安全的 即如果输入参数 String 为 null 则不会抛出 NullPoin
  • java必懂之"=="与equals的区别

    屁话不多说 直接上代码 equals和关系运算符 的区别 author 刘威辰的秘密花园 1 用在基本数据类型boolean a b 2 判断引用是否指向同一个地址且内容是否相同 equals 1 用于判断两个变量是否对同一个对象的引用 即
  • Java 中的自动装箱和拆箱详解

    目录 1 Java 中的自动装箱 2 Java 中的自动拆箱 3 自动装箱和拆箱总结 4 在Java中怎样避免自动装箱和拆箱 1 Java 中的自动装箱 自动装箱是 Java 编译器在基本类型和它们对应的包装类之间进行的自动转换 例如 将
  • Java 简单修饰符补充学习笔记(基础)

    前言 顾名思义 这里是补充修饰符的学习笔记 通配符 顾名思义即可 const 常变量修饰符 首先const是constant 恒定不变的 的缩写 const 就是描述变量为常量的修饰符 关键字 或者说 const 是定义常变量的关键字 用

随机推荐

  • ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29‘ not foun

    复现代码过程中 无意间出现这个问题 本以为很好解决 没想到还是花了我好几个小时的时间 总结一下趴 我的环境是cuda11 3 python3 9 pytoch1 10 问题如图 图1 bug示意图 在网上找了很多答案 要么就是没说清的 要么
  • HTTPS网络编程——S代表SSL协议也叫TLS协议

    参考 HTTPS简介以及SSL协议详解 地址 https qingmu blog csdn net article details 108209248 spm 1001 2014 3001 5502 目录 1 HTTPS简介 2 SSL协议
  • stm32 的 ESP8266 wifi 模块 (ESP - 12s) 的使用

    1 ESP8266 的器件介绍 2 ESP2866外设 的引脚 3 我所用的的ESP2866 的引脚图 4 代码 编程的串口 5 wifi 的指令 1 AT 测试指令 2 AT RST 重启模块 3 AT GMR 查看版本信息 4 AT R
  • 家政行业丨制作便捷高效的家政小程序

    随着现代生活节奏的加快和家庭需求的多样化 越来越多的人开始寻找一种更方便 更高效的方式来获取家政服务 而家政小程序的兴起为这一需求提供了理想的解决方案 本文将简要介绍家政小程序是什么 探讨家政小程序的好处 并提供一些制作搭建家政小程序的方法
  • 【Python】记录一次 Linux + Python + RocketMQ 辛酸历程

    文章目录 安装Python 准备环境 编译安装 遇到问题 安装openssl 重新编译 安装依赖库 准备代码 验证 这是记录一次辛酸的Linux Python RocketMQ使用历程 需求背景是需要验证线上一个RocketMQ服务和里面的
  • 2014.12.17笔记

    我记得科学松鼠会的姬十三曾在一篇文章中写到 开始干一件好事情就像拿着锣一敲 然后志同道合的人就从四面八方赶来 开源之美 仅在于此 不要问怎么入门 直接上路吧 您刚才那个问题是说大数据跟人工智能和深度学习怎么划等号 是这么一个关系 大数据是一
  • XML可扩展标记语言

    XML可扩展标记语言 XML ExtensibleMarkup Language 可扩展标记语言是一种基于文本的格式用于展示结构化的信息 主要用于传输和存储数据 属于W3C World Wide Web Consortium 标准 XML的
  • hdfs怎么处理小文件问题

    一 HAR文件方案 为了缓解大量小文件带给namenode内存的压力 Hadoop 0 18 0引入了Hadoop Archives HAR files 其本质就是在HDFS之上构建一个分层文件系统 通过执行hadoop archive 命
  • 递归下降算法语法分析c语言

    递归下降算法 自上而下文法的递归下降的预测分析 从根节点出发逐步构造分析树 所以被称作自上而下文法 在文法中有递归的函数 例如 E gt TE 所以叫做递归下降算法 使用的文法如下 E gt TE E gt TE e T gt FT T g
  • fcfs调度算法_使用C程序实现先到先服务(FCFS)CPU调度算法

    fcfs调度算法 CPU scheduling decides which of the available processes in the ready queue is to be allocated the CPU There are
  • ORACLE 序列sequence小结

    创建序列语法 需要获取相应的权限 create sequence NAME INCREMENT BY START WITH integer 初始值和递增间隔 MAXVALUE integer NOMAXVALUE 上界或无上界 MINVAL
  • python实训报告心得体会-Python学习心得体会

    首先最开始 我们要明确一点 学习编程不是一日之功 需要每天投入时间学习 也不可纸上谈兵 需要自己亲自操作 不动手就不会发现问题 动了手印象才会深刻 记得更靠 接下来我就稍微总结一下 我在学习中遇到的问题和一些心得体会 1 修改字符串大小写时
  • WPS插件开发流程(1)

    OneKey Lite是一款由 只为设计 独立开发的WPS演示免费插件 在开发过程中 感恩于网上那些无私分享代码的陌生人 给我这个开发小白提供了重要的借鉴参考 于是我决定把用C 和Visual Studio开发WPS插件的每一个具体步骤分享
  • 使用ffmpeg制作时光影集

    目前QQ 剪影等都有照片制作成视频的功能 研究一段时间 始终不得要点 目前能实现的方式有h5动感影集 webv格式视频以及传统的ffmpeg进行照片合成剪辑 H5动感影集没办法导出成视频 webv对于视频的编辑依托于js 因此最终选择了利用
  • 国产大模型顶流「讯飞星火」:图片生成、代码生成,支持插件等重磅上线

    8月12日 新华社研究院中国企业发展研究中心发布的 人工智能大模型体验报告2 0 报告中 讯飞星火以总分1013分 被评为国产卓越大模型之一 体验地址 https xinghuo xfyun cn ch 8tcbd7p 讯飞星火可基于自然文
  • VS配置QT及打开项目报错处理

    例如 1 No such file or directory 2 找不到 Windows SDK 版本 10 0 17763 0 解决方案 请在VS安装所需版本的 Windows SDK 或者在项目属性页中或通过右键单击解决方案并选择 重定
  • android多线程监控view,android 主线程消息队列更新View

    主线程消息队列提供的方法 基本上只要继承自View的控件 都具有消息队列或者handler的一些处理方法 下面是一些handler方法以及被View封装了的方法 其底层用的基本都是handler的api 举例 查看postDelay的定义
  • 硬盘分类详解

    一 按原理分类 机械硬盘 HDD 固态硬盘 SSD 以及混合硬盘 SSHD 1 机械硬盘 HDD 机械硬盘 HDD 是传统硬盘 为电脑主要的存储媒介之一 由一个或者多个铝制或者玻璃制成的磁性碟片 磁头 转轴 控制电机 磁头控制器 数据转换器
  • Tomcat500内部服务器错误,再刷新一下干脆不是公开的项目

    我找了两天原因 最后错误在目录上面 classes和lib要写对 然后就可以了
  • java实现文件读入、读出功能

    一 文档读取 1 将文件读取为String 2019 12 26 将文档打开 并将文档内容读入String中 public static String TxtToString File file String result try Buff