zoukankan      html  css  js  c++  java
  • Java简单的读写文件

    这篇随笔记录了简单的文件输入与输出,是我在学习《Java核心技术卷Ⅰ》第61页到第62页时的一些整理。只用到了极简单的方法。

    文件读取

    要想对文件进行读取,就需要用一个File对象构造一个Scanner对象,如:

    Scanner in = new Scanner(Paths.get("myfile.txt"),"UTF-8");
    

    上面的第二个参数是可以省略的,但是将采用运行这个Java程序的机器的默认编码。
    现在就可以使用Scanner的方法对文件进行读取了。例如:

    import java.io.IOException;
    import java.nio.file.Paths;
    import java.util.Scanner;
    
    public class test{
        public static void main(String[] args) throws IOException {
            Scanner sc = new Scanner(Paths.get("myfile.txt"),"UTF-8");
            String string = sc.nextLine();
            System.out.println(string);
        }
    }
    

    上面的简单代码将会打印出myfile.txt文件中的一行字符。
    注意:上面的文件地址因为放在了启动位置下,所以可以直接写文件名。下面还将仔细说明文件的地址。

    文件写入

    要想写入文件,就需要构造一个PrintWrite对象。在构造器中,只需提供文件名:

    PrintWrite pw = new PrintWrite("myfile.txt","UTF-8");
    

    如果文件不存在,创建该文件。现在可以用像输出到System.out一样使用print、println、printf命令。例如:

    import java.io.IOException;
    import java.io.PrintWriter;
    
    public class test{
        public static void main(String[] args) throws IOException {
            PrintWriter pw = new PrintWriter("myfile.txt","UTF-8");
            pw.print("hello world!");
            pw.close(); 
        }
    }
    

    在代码结尾应当关闭pw,或者使用pw.flush()进行刷新,不然数据会丢失。

    文件位置

    文件地址可以使用相对地址,也可以使用绝对地址。
    当指定一个相对文件名时,文件位于Java虚拟机启动路径的相对位置。如果在命令行方式下启动程序,启动路径就是命令解释器的当前路径。如果使用集成开发环境,那么启动路径将由IDE控制。可以使用下面的调用方式找到路径的位置:

    String dir = System.getProperty("user.dir");
    

    当然也可以使用绝对路径,不过别忘了在“”前再加一个“”。

  • 相关阅读:
    new UglifyJsPlugin vue项目打包后不让报错
    js用到解析正则表达式的函数
    在对象遍历中去字符串截取某个字段然后赋值给这个字段的坑
    Vuex之第五弹终弹之模块化实践项目运用
    vue-cli3+ts的webpack 测试,开发,部署环境配置
    vue-cli2/vue-cli3之抽离打包请求之config
    git回退到指定版本的操作流程
    es6,es5的遍历合集 顺便参考ES6详细理解map,set常用运用
    vue之复杂对象结构的响应,如map对象
    js数组深拷贝
  • 原文地址:https://www.cnblogs.com/mryx/p/12979661.html
Copyright © 2011-2022 走看看