Java Scanner、PrintWriter的用法

Scanner in=new Scanner(System.in);
PrintWriter out=new PrintWriter(“good.txt”,”UTF-8”);
//如果文件不存在,创建该文件,可以像输出到System.out一样使用print,println,以及printf命令
out.println(“hello”);
//如果文件名中包含反斜杠符号,就要记住在每个反斜杠之前再加一个额外的反斜杠,如”c:\mydirctory\mufile.txt”
//在这里指定了UTF-8字符编码,这对于互联网上的文件很常见,读取一个文本文件时,要知道它的字符编码Scanner(路径,编码);如果省略字符编码Scanner(路径);则会使用默认编码,如果在不同的机器上,就会有不同的表现
//现在,就可以利用前面介绍的任何一个Scanner方法对文件进行读取
//要想写入文件,就需要构造一个PrintWriter对象。在构造器中,只需要提供文件名:
//可以构造一个带有字符串参数的Scanner(”myfile.txt”);但是这个Scanner将字符串解释为数据,而不是文件名,这个Scanner会将参数作为包含10个字符的数据
//党制定一个文件名时,文件位于java虚拟机启动路径的相对位置。如果在命令行方式下用下列命令启动程序:java Myprog
// 启动路径就是命令解释器的当前路径。然而,如果使用IDE,那么路径将由IDE控制,可以使用下面的调用方式来找到路径的位置:
String dir=System.getProperty(“user.dir”);
String dir2=System.getProperty(“hello”);
//PrintWriter(“HELLO.txt”,”UTF-8”);而Scanner(Paths.get(“hello.txt”),”UTF-8”);
//如果觉得定位文件比较烦恼,可以考虑使用绝对路径,例如:c:\mydirectory\myfile.txt
//正如读者所看到的,访问文件与使用System.in和System.out一样,要记住一点:如果用一个不存在的文件构造Scanner,或者用一个不能被闯将的文件名构造一个PrintWriter,那么就会发生异常。Java编译器认为这些异常比”被零除”异常更加严重。现在,应该告诉编译器,已经知道有可能出现输入\输出异常。这需要在main方法中用throws IOException
/*
public static void main(String[] args) throws IOException
{
Scanner in=new Scanner(Paths.get(“hello.txt”,”UTF-8);
PrintWriter str=new PrintWriter(“hello.txt”,”UTF-8”);
}
现在已经学习了如何读写包含文本数据的文件,对于更加高级的技术
当采用命令行方式启动一个程序时,可以利用Shell的重定向语法将任意文件关联到System.in和System.out;
java Myprog

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值