java输入输出程序代码
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java输入输出程序代码相关的知识,希望对你有一定的参考价值。
参考技术A概述
java程序输入需要用到Scanner工具类,输出则使用println
解析
1、输入:
从键盘输入需要用到java的Scanner这个util包下的工具类
Scanner中输入是需要对输入的字符进行分类,int类型为nextint()方法,double类型为nextDouble()方法,字符串类型为next()方法。
#code:
#out:
2、输出:
java常用的输出为println
#code:
#out:
除了println()方法之外,java还有print()和printf()两种输出方法,
print、println、printf的区别:
print--是函数,可以返回一个值,只能有一个参数。
println 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始。
printf--函数,把文字格式化以后输出,直接调用系统调用进行IO的,他是非缓冲的。
拓展内容
java 输入输出流(I/O)
Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。Java的I/O流提供了读写数据的标准方法。任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法。
Java.io是大多数面向数据流的输入/输出类的主要软件包。此外,Java也对块传输提供支持,在核心库 java.nio中采用的便是块IO。
流IO的好处是简单易用,缺点是效率较低。块IO效率很高,但编程比较复杂。
Java IO模型 :
Java的IO模型设计非常优秀,它使用Decorator模式,按功能划分Stream,您可以动态装配这些Stream,以便获得您需要的功能。例如,您需要一个具有缓冲的文件输入流,则应当组合使用FileInputStream和BufferedInputStream。
输入流(Input Stream):
程序从输入流读取数据源。数据源包括外界(键盘、文件、网络?),即是将数据源读入到程序的通信通道。
输出流(output Stream):
程序向输出流写入数据。将程序中的数据输出到外界(显示器、打印机、文件、网络?)的通信通道。
JAVA 输入输出程序开发
参考:
java File类list()和listFile()的方法区别
import java.io.*; public class HandInput{ //生成文件路径 //private static String path = "Documents/code/java 输入输出程序开发"; //文件路径+名称 private static String filenameTemp; /** * 创建文件 * @param fileName 文件名称 * @return 是否创建成功,成功则返回true */ public static boolean createFile(String fileName){ Boolean bool = false; filenameTemp = fileName+".txt"; //文件路径+名称+文件类型 ? File file = new File(filenameTemp); try{ //如果文件不存在,则创建新的文件 if(!file.exists()){ file.createNewFile(); bool = true; System.out.println("success create file, the file is "+filenameTemp); //创建InputStreamReader对象,用来读取字符流 //缓冲指定 字符流的输入 //FileInputStream->InputStreamReader->BufferedReader BufferedReader buf = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter buf2 = new BufferedWriter(new FileWriter(filenameTemp)); String str = buf.readLine(); while(!str.equals("end#")){ buf2.write(str); buf2.newLine(); str = buf.readLine(); } buf2.flush(); //刷新该流的缓冲,即将该流输出到目的 buf2.close(); buf.close(); } else { System.out.println("file is exist"); } } catch(Exception e) { e.printStackTrace(); } return bool; } public static void main(String[] args){ createFile("f"); } }
import java.io.*; public class WordCount { public static void main(String[] args) throws IOException { File file = new File("article.txt"); //isDirectory()是检查一个对象是否是文件夹 if(!file.exists() || file.isDirectory()){ throw new FileNotFoundException(); } BufferedReader br = new BufferedReader(new FileReader(file)); int count=0; String tmp = null; tmp = br.readLine(); while(tmp!=null){ tmp = tmp.toLowerCase(); System.out.println(tmp); while(tmp.indexOf("hello")!=-1){ //调用String类的indexOf(String str)方法,返回第一个相同字符串出现的下标 count++; tmp = tmp.substring(tmp.indexOf("hello")+5); //调用String类的substring(int beginIndex)方法,获得第一个相同字符串出现后的字符串 } tmp = br.readLine(); } System.out.println("单词hello在文章article中出现的次数为: "+count); } }
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; public class CodeCount { static List<File> javalsf = new ArrayList<File>(); static List<File> lsf = new ArrayList<File>(); static int count =0; public static void main(String[] args) throws Exception{ File file = new File("/Users/fitzroy/Documents/code/汇添富移动互联股票(000697)基金收益程序/src"); getJavaFiles(file); System.out.println("有"+javalsf.size()+"个.java源文件"); getLinesOfCode(javalsf); } public static List<File> getJavaFiles(File file){ if(!file.exists()){ System.out.println("file not exists"); } else{ if(file.isFile()){ //是文件 String filename = file.getName(); if(filename.substring(filename.lastIndexOf(".")+1).equals("java")){ //后缀为.java的文件 javalsf.add(file); } } else{ //是文件夹 File[] filelist = file.listFiles(); //获取文件夹中的File for(File files : filelist){ getJavaFiles(files); } } } return javalsf; } public static int getLinesOfCode(List<File> javaFiles) { int num = 0; try { for (File file : javaFiles) { System.out.println("File: " + file.getName()); InputStreamReader is = new InputStreamReader(new FileInputStream(file)); BufferedReader br = new BufferedReader(is); String str = null; str = br.readLine(); while (str != null) { str = str.trim(); if (!str.startsWith("//") && !str.equals("")) { num++; } str = br.readLine(); } count += num; System.out.println("lines of code: " + num); System.out.println("-------------------"); br.close(); } } catch (Exception e) { e.printStackTrace(); } System.out.println("total: " + count); return count; } }
以上是关于java输入输出程序代码的主要内容,如果未能解决你的问题,请参考以下文章
JAVA基础-输入输出:1.编写TextRw.java的Java应用程序,程序完成的功能是:首先向TextRw.txt中写入自己的学号和姓名,读取TextRw.txt中信息并将其显示在屏幕上。(代码片