Java(Scanner与其他字符流结合)
来源:互联网 发布:lhgdialog.js官方下载 编辑:程序博客网 时间:2024/06/03 03:35
除了最基本的字符流外,还有其它类,如CharArrayReader,CharArrayWriter,StringReader,StringWriter,PrintWriter,PushbackReader等,这些字符流的详细使用说明可以参考JavaAPI文档
一般的,名称以Reader结尾的类都是字符输入流,其大部分读取数据的方法都来自Reader类,名称以Writer结尾的类都是字符输出流,其大部分写数据的方法都来自Writer类,名称以Stream结尾的类一般都是字节流。
PrintWriter用于向字符(文本)输出流打印对象的格式化表示形式
Scanner是一个可以使用正则表达式来解析字符串的简单文本扫描器。Scanner使用分隔符模式将其输入分解为标记,在默认情况下该分隔符模式与空白匹配。然后可以使用不同的next()方法将得到的标记转换为不同类型的值,在读取下一个标记之前可以使用hasNext()方法检测下。
基本思路是先用Scanner类和文件字符输入流读取文件中的每一行,再用Scanner扫描解析每一行,得到需要的数据。
import java.io.FileNotFoundException;import java.io.FileReader;import java.io.PrintWriter;import java.util.Scanner;public class ScannerPrintWriterDemo { public static void main(String[] args) { Scanner s=null; PrintWriter pw=null; try{ s=new Scanner(new FileReader("source.txt")); pw=new PrintWriter("dest.txt"); while(s.hasNextLine()) { String strLine=s.nextLine(); int sum=getLineSum(strLine); pw.println(strLine +"\t"+sum); } } catch(FileNotFoundException e) { e.printStackTrace(); }finally { if(s!=null) s.close(); if(pw!=null) pw.close(); } } private static int getLineSum(String strLine) { Scanner s=new Scanner(strLine); int sum=0; while(s.hasNextInt()) { sum+=s.nextInt(); } return sum; }}
提示:Scanner不仅可以读取解析输入流的内容,还可以扫描解析字符串,转换成用户需要的数据。
0 0
- Java(Scanner与其他字符流结合)
- java与其他 注释总结
- CString与其他字符类型的转换
- 关于工作流系统与其他系统结合的思考(未整理)
- 第五课:流与其他
- apache与其他webserver结合时,无法启动
- Python与其他语言结合的参数转换函数PyArg_ParseTuple()
- Hadoop项目架构及与其他项目的结合关系
- 区块链解读,区块链与其他技术的结合
- 如何将机器人与其他行业更好地结合起来
- Java与其他语言的互操作性
- Java与其他语言的互操作性
- java程序与其他进程的数据通信
- JAVA程序与其他进程的数据通信
- Java与其他语言的对比
- Java-String与其他数据类型的转换
- 字符指针与其他类型的指针的使用区别
- 输出字符数组与其他数组的区别
- Loadrunner性能测试总结
- Python 中的cuosor 操作数据库
- PhpStorm 编辑器
- 弹出异常提示框的崩溃分析
- php flush
- Java(Scanner与其他字符流结合)
- xml中与css的简单演示
- 汇编语言入门介绍
- 关于Thin Plate Spline (薄板样条函数)
- Highcharts一些属性
- mac +opencv +java
- MAP在保存对象时候的优点
- mysql启停服务
- SpringMVC+MyBatise开发流程